#tools-and-devops
1 messages · Page 25 of 1
i also have it so that the CI runners that join the tailscale network can only talk to port 22 on the deployment VMs so can't talk to anything else going on in that network
this is my full workflow for that https://github.com/jb3/blog/blob/main/.github/workflows/deploy-site.yml
oh, huh, I didn't know that
Is this a good place to share my debugger?
Well, here goes nothing
🥧 seapie is an alternative to pdb for debugging python
https://github.com/hirsimaki-markus/seapie
'A breakpoint should just mean >>>'
A breakpoint should just mean >>>. Contribute to hirsimaki-markus/seapie development by creating an account on GitHub.
Looks neat, I'll try it out!
Hi,im a intermediate level python developer and i want to know that how can i learn automation with python... are there some specific roadmaps to follow or what?.... i also want to know the freelancing scopes in automation
Really nice! I like how the ">>>" prompt impersonates the Python repl, so that it looks like I'm doing a demo of my library project (like using a Jupyter Notebook, but with the interpreter look and feel).
Nice to hear
if you want examples of automation, https://automatetheboringstuff.com has several chapters of automations
A Page in : Automate the Boring Stuff with Python
Hey guys, I think this might be the only appropriate place to share my library given what it does?
Oh well here we go, PyPDFForm is (probably) the best Python library for PDF form processing.
Azure is growing and will surpass AWS usage because of its built in eco system, we have microsoft team,Outlook,365 like whole microsoft suite. We got everything in single suite. And integrating Azure services with others it's service will be easy.
Okay thank you so much, I’ll work on learning Azure because majority of jobs that I’ve been searching for are requiring some knowledge of devops
Hello guys , Ill have a call with the release manager in the deployment domain tomorrow. I was being told to know and read about the basics of AWS, deployment , http, API's . Like they told its a fresher role for reliability engineer.
What and how should I prepare and they said mostly in this role,tools will be used.
Hi! I built a CLI tool to freeze apps and save RAM without closing them. It's my first serious project on Python. Check it out! https://github.com/AnnPoshtak/Cryo
So this is basically the same as doing killall -SIGTSTP firefox? How do you save RAM with that?
Yes, it uses signals like kill. But Cryo makes it easier: it automatically finds and freezes the whole process tree (including child processes), so nothing keeps running.
When the app is paused, it stops work. This allows the OS to move it to Swap (disk) much faster, freeing up RAM for other tasks
Can someone advice me
the hell
What are we replacing Github with?
Depends on why you want to replace GitHub
I decided to try Renovate. It says it works with uv with "lockFileMaintenance"
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:recommended",
":disableDependencyDashboard"
],
"lockFileMaintenance": {
"enabled": true
}
}
But my pre-commit maintains a requirements.txt for GitHub, Snyk, etc, etc
repos:
- repo: https://github.com/astral-sh/uv-pre-commit
rev: e5ef0574ef824f2a51084062e6506068e458126e # frozen: 0.9.24
hooks:
- id: uv-lock
- id: uv-export
args: ["--quiet", "--frozen", "--all-groups", "--output-file=requirements.txt"]
- id: uv-export
args: ["--quiet", "--frozen", "--all-groups", "--format=pylock.toml", "--output-file=pylock.toml"]
And the PRs that Renovate is sending are only touching the requirements.txt 
From 0c54ca2b29e1c017e84e9cd4c6eb730df912a43d Mon Sep 17 00:00:00 2001
From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com>
Date: Tue, 13 Jan 2026 18:02:06 +0000
Subject: [PATCH] Update dependency starlette to v0.51.0
---
requirements.txt | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/requirements.txt b/requirements.txt
index 35b1ffe..62ac55c 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -327,9 +327,9 @@ sphinxcontrib-serializinghtml==2.0.0 ; platform_machine == 'x86_64' and sys_plat
--hash=sha256:6e2cb0eef194e10c27ec0023bfeb25badbbb5868244cf5bc5bdc04e4464bf331 \
--hash=sha256:e9d912827f872c029017a53f0ef2180b327c3f7fd23c87229f7a8e8b70031d4d
# via sphinx
-starlette==0.50.0 ; platform_machine == 'x86_64' and sys_platform == 'linux' \
- --hash=sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca \
- --hash=sha256:a2a17b22203254bcbc2e1f926d2d55f3f9497f769416b3190768befe598fa3ca
+starlette==0.51.0; platform_machine == 'x86_64' and sys_platform == 'linux' \
+ --hash=sha256:4c4fda9b1bc67f84037d3d14a5112e523509c369d9d47b111b2f984b0cc5ba6c \
+ --hash=sha256:fb460a3d6fd3c958d729fdd96aee297f89a51b0181f16401fe8fd4cb6129165d
# via fastapi-slim
types-pillow==10.2.0.20240822 ; platform_machine == 'x86_64' and sys_platform == 'linux' \
--hash=sha256:559fb52a2ef991c326e4a0d20accb3bb63a7ba8d40eb493e0ecb0310ba52f0d3 \
Can Renovate bump both the uv.lock and the requirements.txt together?
Can probably configure postUpgradeTasks
{
"postUpgradeTasks": {
"commands": [
"uv export --frozen --all-groups --output-file=requirements.txt",
"uv export --frozen --all-groups --format=pylock.toml --output-file=pylock.toml"
]
}
}
That would work if Renovate was bumping the uv.lock, but it’s bumping the requirements.txt directly.
I can’t go backwards from the requirements.txt back to the uv.lock.
Where do i check for #jobs
we got #career-advice where you can ask related questions, but there is no place for announcing, requasing or advertising jobs or services on this service as we have strict #rules against such things here
sigh today i legitmatly want llm tools native to linux for pattern matching in linux(bashrc) to deal with github repo pattern matching. today is a sad day
hi guys ! quick questions. Would you use such a tool as computational notebook ?
for research purposes we were exploring different types of notebooks that could add some additional value to overcome some of the limitations if rge existing vanilla notebooks
and we ended up with a set of features which we implemented in this one
the obvious one is the "code on canvas" but there are other set of other feature
@near mist
I'm making a portfolio maker
Where you run the file and put all required things in config.json
Download the "small" package of dependencies and done !
It will make an index.html for you and deploy that to GitHub pages through your account. (Username and PAT)
Imma put it to GitHub soon as it finishes
This is an open-source project and feel free to contribute here: 🔗https://github.com/Legharihasham/Visionary-AI
yo Chat... anybody knows how to FRP bypass an android??
this is sick
!warn 1124092593853190214 I've deleted your post. Advertising is not allowed anywhere on the server.
:incoming_envelope: :ok_hand: applied warning to @rose estuary.
Hey everyone 👋 just sharing a project I’ve been working on, in case anyone’s interested:
🖥️ EasyPyDesktop
Windows desktop app → native, pure Python code generation
Beginner-friendly, ideal for small or casual apps
Generate a Windows .exe in one click
Beta version – Pro license included (all features unlocked until May 2026)
Custom plugins • Embedded Python runtime • Built-in pip manager
is it normal for large python projects to essentially have there own unique "harness" for development environment setup and such? Like, it feels like every python project I jump into I have to familiarize myself with this bespoke setup system where as, coming from my .NET background, the solution is essentially ready to build and run with 1 click a lot of the times.
duckduckgo GPT-4o mini says "Yes, it's very common [...]"
I've been using "just" to make that problem a little easier. The goal -- which I haven't quite completed -- is that someone can "git clone" my project, install "just", and then type "just runme" and just will take care of doing all the preperatory stuff in the right order.
Alas, there's still stuff they have to install manually: python itself, of course; "just", and typically a few other things.
put a Makefile to install just? 
booo
Yo can some one help me? I wanna setup my tool i have the script but i need help for starting it its python tool
hello guys I am new to this community, I designed a n built a python more of a library kind of thing for performing scientific, robotics and physics calculations. It is named CalCulus. I have been working on this almost daily but now u am kind of out if ideas so I want more ideas for version improvement. If free check out the link -
0httpsgithubgithub.comLegedsDaDCalCulus
CalCulus is a fast, lightweight scientific computing library written in C++ and exposed to Python using pybind11. - LegedsDaD/CalCulus
much code, very wow
They have releases
Each release has a wheel uploaded, and a link to a different repo
So each version is in it's own repo
What the actual fuck
Hey how’d you know my expression?
@heavy knot this is not how you should do things 🥴
You should have one repo, add commits as you do work, add a tag e.g. v0.4.0 when ready for release and make a release at that tag
So you have all history in one repo
Rather than this bizarre one repo per version with ~1 commit each
wow that's a new one
mini rant: I'm struggling to see the benefits of using ArgoCD to deploy my k8s resources. I had another team set it up for me, they added a few 100 lines of yaml code, an extra layer for my team to debug, and and it's hard to dry-run changes locally. All for... drift detection and prevention (and IAA)? Idk... The cons outweigh the benefits IMO. Someone prove me wrong change my mind please.
you listed the main pro (automatic drift detection)
I'm not sure what you mean by
a few 100 lines of yaml code, an extra layer for my team to debug
do you mean they made a Helm chart?
They added a few helm templates for an argocd application resource to the existing project. They also added pipeline templates to build the Argo app (using azure DevOps)
ah, I see
and what about "the extra layer to debug"?
what do you want to debug?
whether the generated manifest is correct?
I am seeing a lot of questions marks in the dashboard indicating an unknown status. I don't see those resources using kubectl get x, where x is the resource in question. I dont know how to delete them
Furthermore, the team that set it up for us did a lot of value file overriding, so now I have several values files PER environment that I must update (as opposed to two, one global file and one env specific file for each env).
is there a site for single script python code
GitHub?
Added Kubernetes support to the web app deployment platform I have been building for last few years https://github.com/openrundev/openrun. The whole config for creating an app is just:
app(path="/streamlit/uber", source="github.com/streamlit/demo-uber-nyc-pickups", spec="python-streamlit")
That Starlark config replaces thousands of lines of YAML. It defines what path (or domain) to install the app at, where to get the source code from and how to do the request routing. Schedule a sync and it automatically monitors for any updates to app config or source code and creates/updates the Kubernetes resources.
You can get rid of Jenkins/GitHub Actions for build, ArgoCD/Flux for CD and any IDP etc. Same config can be used on single node, so your config is not tied to Kubernetes, you can run it on a single node easily.
This is limited for now to deploying web apps, no support for deploying additional services like databases etc.
Can your editor+lsp combo handle this? https://github.com/neovim/neovim/issues/30908#issuecomment-3861617601
from collections import namedtuple
Access = namedtuple("Access", ["address", "type"])
a = Access(100, "w")
a.address
# ^------ With the cursor here, do goto_definition
Neovim + pylsp is not happy
Don't use namedtuple
use NamedTuple
!d typing.NamedTuple
class typing.NamedTuple```
Typed version of [`collections.namedtuple()`](https://docs.python.org/3/library/collections.html#collections.namedtuple).
Usage...
Really? I believe named tuple also support typing.
Seems strange to use something from package rather than builtin
But nevertheless, the code is like that and I'm probably not changing it. I was interested in the lsp issue.
Question though. If I want to override even just __repr__, then it's better to derive from dataclass, right?
I've used a lot of typing.NamedTuples where I add methods
__repr__ should probably work. I usually use it for classmethods
That's what I do usually. NamedTuple and methods
!clban 1468278465265664155 some kind of scam
:incoming_envelope: :ok_hand: applied ban to @timid wolf permanently.
Seems strange to use something from package rather than builtin
both are from stdlib packages
it's essentially a drop in replacement that does typing, you can just update your namedtuple definitions and all users shouldn't really notice unless they look really closely
the lsp issue is likely a consequence of namedtuple not playing well with typing, no?
actually, got to definition does work for me there with pyright, but I still stand with dropping namedtuple for NamedTuple to get typing support
honestly, I woudn't use any named tuple if you don't need it for tuple reasons, dataclasses tend to be so much cleaner
(NamedTuple also looks exactly like a dataclass in how you define it, so that's another good thing about it)
for context on typing
hmm, I just remembered that you might be using ty, in which case yeah namedtuple doesn't behave well but NamedTuple does
I think this might be in part because with NamedTuple it's basically just a normal class definition, the code will know how to deal with that
namedtuple is a weird case where a bunch of codegen is done based on the strings passed, and support for it is special handling of namedtuple in particular
I agree I don't like the style of namedtuple, but you can type it, I believe
Seems I was wrong, can't find it in
Yeah, noticed
It's annoying that there are many ways to do almost the same thing. Very Non-zen
I currently use pylint, pylsp ruff and mypy
in this case it's more "namedtuple is fundamentally broken, let's create a replacement"
idk, the old thing is there for source compatibility, you really shouldn't use it in modern code
though arguably the old thing should be deprecated
Sure but it's still there. Should be some lint rules to deprecated it perhaps.
apparently there is one for pyi files
https://docs.astral.sh/ruff/rules/collections-named-tuple/
Checks for uses of collections.namedtuple in stub files.
Nice, let's see what astral thinks about checking it in regular py files as well
hey guys, would a gui for uv be useful?
yes... i want to get into it but learning a new library takes time that i am investing in other things
Friend of mine wrote this open source plugin for improved Claude code reviews using independent sub agents. Feel free to check it out and provide feedback or contribute: https://github.com/HartBrook/lookagain
my initial guess is "no" but after seeing that mock up I can easly picture some of my teamworkers using it. What about a section/tab that highlight detected vulnerabilities for specific versions?
did he check the ralph-loop plugin?
I ended up looking at this and supposedly this was done ages ago 
https://github.com/astral-sh/ruff/pull/6297
Yeah, it does indeed work, you just need to make sure that you have the PYI checks enabled
> ruff check a.py
PYI024 Use `typing.NamedTuple` instead of `collections.namedtuple`
--> a.py:3:10
|
1 | from collections import namedtuple
2 |
3 | person = namedtuple('person', ['name', 'age'])
| ^^^^^^^^^^
|
help: Replace with `typing.NamedTuple`
Found 1 error.
Should have been a reply to this, but oh well
Nice ✌️
thanks, that’s a solid suggestion. a Security tab makes sense. scan the current env and uv.lock for known vulnerabilities. show CVE, OSV IDs, severity, and a one-click upgrade to fixed version. i’ll def prototype it, i can benefit from the learning process bc i wasn't that much in security so far tbh.
very stupid question but how does one turn a .py file into an exe?
That's not a stupid question. There are ways to package python modules together with the interpreter into an exe or installer, like nuitka, but I'm not an expert by far. You might want to ask in #packaging-and-distribution
he is familiar, yes. This is more of a guard-rails oriented tool for code reviewing with auto-fix capabilities. I will suggest he add something to the readme to specify how it differs from the ralph-loop plugin tho. Thanks for the feedback!
I personally have found it so difficult that I've given up.
i just figured it out
need help?
no thanks
Hi there! I want to automate sending emails with Gmail. Do I need any permission? Do I need api?
I read I need two factors authentication.
Any suggestions?
Use this instead of a password
https://support.google.com/mail/answer/185833
Important: App passwords aren't recommended and are unnecessary in most cases. To help keep your account secure, use "Sign in with Google" to connect apps to your Google Account. An app password is a
Thanks
sounds great
Couldn't you just use smtp?
This IS for SMTP
SMTP doesn’t support MFA so you have to make a token for your account
Very subjective question. You might not be able to. You need something they are interested in and something you can do for them or something you can make that they are interested in.
Speaking from experience, it is not hard to impress people if you can do something they want that they themselves can't. Maybe just do stuff you're interested in and if they get to know you they'll find it interesting. If you want someone to like you back it takes more than impressing them though. Not something you just arbitrarily do without an opportunity imo.
Most people would be impressed though if they had a software idea you could implement and if you could make it and deliver it to them efficiently (i.e. part of the devops name in this channel), if you can make software and continuously deliver it safely and rapidly after changes a lot of people would be impressed.
Install arch linux without using the archinstall command.
Omgg
They asked for ideas on impressing a crush, not your employer.
Don't date your boss.
Yea but the end result is your crush gets their software to them faster. I also amidst that just suggested software development for what is related to them. What are the odds they have a crush which installing arch Linux serve to impress? 😭
Guyzz give me a some tips yar
Dayuum I'm f*ck ing 17 yarr 😔
learn to rap
Let’s say I have scripts foo and bar. If I want to share some stuff in the two scripts in a utils file, but still want foo and bar (some shebang python stuff) to be clean… basically my best bet for path management/imports is just to add file.parent to path I guess???
Wondering if there have been advances in Pythonpath management tech for smaller scripts
modifying sys.path is still not recommended
what else is in your project? You meant a utils directory I think?
So the longer version is i have this project with a scripts directory, so scripts/foo, scripts/bar, etc. You call something like scripts/do-menial-task to get a thing done
Most of these scripts are just bash/shell scripts, but for argument parsing in particular I’ve been trying to get us to use python scripts.
In bash script land we can share utils with a ‘source ./utils.sh’ call.
We don’t use relative imports in our overall Python project… but maybe relative imports for scripts is just what makes sense for doing the same thing in Python land
(The objective: being able to call Python scripts with ./scripts/foo or ./scripts/bar just as transparently as with shell scripts. Tho I just realized our shell scripts likely also have issues when called outside of the base of the project as well)
do you have install instructions for getting started with this repo?
One better, we have direnv and the like on top of that
… so maybe we set up Pythonpath from the outset to just have good imports.
i still would avoid changing the python path. You could structure your repo to install the Python code, then python -m pip install -e . as part of the installation.
Hmmm so that installs the root into the environment. If our scripts are shebanged with #!/usr/bin/env python then that should find the right python/venv when invoked and then I can import packages “properly”
Looking for 1 Python repo to try a small GitHub Action that flags GitHub Actions cache regressions in PRs (cache key churn / hit-rate drops) and posts a short Job Summary + optional PR comment with “what changed / now what”.
Alpha install is low-risk: a vendored dist-only bundle (action.yml + dist/*) committed into the repo with SHA256 sums + commit metadata + easy rollback. No SaaS backend. It only uses the repo’s GITHUB_TOKEN to read Actions run/job metadata; PR comment is optional.
Time: ~10–15 min setup, baseline builds asynchronously from normal runs, then one quick “bad cache key” PR test.
Pilot docs + example output: https://gist.github.com/eivindsjursen-lab/ffe0fa52d55388fdda15f80719bf95af
If you can try it (single job or matrix), reply here and I’ll DM the bundle + minimal workflow snippet.
Cache Health Gate private alpha pilot docs + sample output - PERMISSIONS.md
Now day we use ai to create ai and use the ai we make to create the another ai and that ai create the best ai and the best ai create the expert ai and....
we all lost the job
i'm sorry you lost your job
hey, im working on a project that uses pygetwindow to determine the location of a window on the screen and focus it. its important that i have it set to a specific coordinate, but i cant figure out how it uses coordinates... my screen resolution is 2400 x 1600 and setting the position of the window to half of that does not put the top left corner in the center, any idea why?
the source code for the function and my code calling it
and theres the window, tucked in a lil corner...
Yeah that’s normal. The coordinates in pygetwindow are based on the top-left cornor of the screen, not the center. So when you do moveTo(1200, 800) on a 2400×1600 screen, you’re just placing the top-left corner of the window at that point, not the window itself centered there.
If you want the window centered, you have to subtract helf of the window’s width and height from the screen center. Something like:
center_x = 2400 // 2 - window.width // 2
center_y = 1600 // 2 - window.height // 2
window.moveTo(center_x, center_y)
Otherwise the window will always appear offset because the coordinate refers to the corner, not the middle.
Once again thinking about Docker. I have a Dockerfile for a project that has a bunch of packages that should be in a monorepo but aren't. As a compromise, I'd like to add these packages as git submodules to the repository that manages the dockerfile and turn this repository into a uv workspace. Something like this:
Project/
├── workspace-foo/
│ └── pyproject.toml
├── workspace-bar/
│ └── pyproject.toml
├── not-workspace-baz
├── Dockerfile
└── pyproject.toml
Problem: cache invalidation galore. If Project is the build context and I mount the build context to install the workspace, then changes to not-workspace-baz or the Dockerfile invalidate that layer. I was concerned about the intermediate layer for installing dependencies but I forgot about the lockfile so I think it will be fine?
I have this monorepo structure:
pyproject.toml
tools/
└── tool-a/main.py
└── tool_b/main.py
But mypy doesn't like this, it says main is a duplicated module.
Currently each tool is added as separate mypypaths, which makes the main modules all have the same name "main". What is a better structure?
maybe you somehow need to run mypy some so that it only "sees" one tool subdirectory at a time
Because it complains about the duplicated main module. But that might be because each tool is their own toplevel due to mypypath
One till has a dash in its name, so that also makes mypy choke.
And I'm not sure if I should sprinkle __init__.py files all the way down.
I don't use uv nor Github so not sure how applicable your picture is to my case. Do you have any identically named files in the two projects?
Here is the exact message mypy gives, all files represented in the tree are empty:
~/projects/mypy_packages_test$ tree
.
├── pyproject.toml
└── tools
├── foo-a
│ └── main.py
└── foo_b
└── main.py
4 directories, 3 files
~/projects/mypy_packages_test$ mypy .
tools/foo_b/main.py: error: Duplicate module named "main" (also at "./tools/foo-a/main.py")
tools/foo_b/main.py: note: See https://mypy.readthedocs.io/en/stable/running_mypy.html#mapping-file-paths-to-modules for more info
tools/foo_b/main.py: note: Common resolutions include: a) using `--exclude` to avoid checking one of them, b) adding `__init__.py` somewhere, c) using `--explicit-package-bases` or adjusting MYPYPATH
Found 1 error in 1 file (errors prevented further checking)
ty solves the same without any issue 👀
Are these folders not modules?
what you see is what it is
i.e., do you not have __init__.py files?
So that’s why
Neither uv or GitHub matters here
--explicit-package-bases technically fixes it for that minimal example, but it deconflicts them by prepending the directories to their module name (tools.foo_b.main) which i imagine would mess up resolution of other imports if you have modules in each tool's directories
though i guess that would be accurate if you run your tools with -m, e.g. sh /mypy_packages_test $ python -m tools.foo_b.main
Sprinkling init file is not doable with a folder with a dash in the name:
$ touch __init__.py
$ touch tools/__init__.py
$ touch tools/foo-a/__init__.py
$ touch tools/foo_b/__init__.py
$ mypy .
foo-a is not a valid Python package name
I'm pretty sure adding epxlicit package bases, doesn't help (at least as mypy setting in pyproject.toml, but let's try it)
oh right, i had checked without the dash in my example
the tools are run as "standalone" scripts: tools/foo-a/main.py [OPTIONS]
Hmm! removing the init files and passing explicit seems to work for this case
$ mypy . --explicit-package-bases
Success: no issues found in 2 source files
I wonder what failed with my larger example and that setting in pyproject.toml 🤔
aha, setting these (maybe stupid) MYPYPATH reintroduces the duplicated error:
$ MYPYPATH=tools/foo-a:tools/foo_b mypy . --explicit-package-bases
tools/foo_b/main.py: error: Duplicate module named "main" (also at "./tools/foo-a/main.py")
tools/foo_b/main.py: note: See https://mypy.readthedocs.io/en/stable/running_mypy.html#mapping-file-paths-to-modules for more info
tools/foo_b/main.py: note: Common resolutions include: a) using `--exclude` to avoid checking one of them, b) adding `__init__.py` somewhere, c) using `--explicit-package-bases` or adjusting MYPYPATH
Found 1 error in 1 file (errors prevented further checking)
yeah it falls apart under more scrutiny, tested with the following layout: py tools/ ├── tool-a/ │ ├── main.py │ │ import mod │ │ print(mod.x) │ └── mod.py │ x = 1 └── tool_b/ ├── main.py │ import mod │ print(mod.y) └── mod.py y = 2 sh (test)> py tools\tool-a\main.py 1 (test)> py tools\tool_b\main.py 2 (test)> mypy --explicit-package-bases . tools\tool_b\main.py:2: error: Module has no attribute "y" [attr-defined] Found 1 error in 1 file (checked 4 source files)
im not a frequent user of mypy though, maybe there's another option?
replacing mypy with ty might be the way forward, but i'm not sure ty is up to par with mypy yet
Making proper packages
Mypy is able to see the package roots as the bases
This works just fine in my monorepo posted above
And how would one do this? I thought init files were supposed to be optional nowadays with "implicit packages", no?
Could you show what's different between your monorepo and my example?
No
!pep 420
The “implicit” part is an outer shell with, for example, your company name
Your actual code folders are still expected to have __init__.py files.
As far as I understand, the only difference is the __init__.py files.
Where do you have those?
(I can't find any in the screenshot)
In every folder that has other Python files
Python is so complicated, 😭
vendor_products is one of the projects/tools so each of its sub folders with the actual tool code in it gets an init file
How?
In this regard
If code, __init_.py
If no code, no __init_.py
Packages, imports. Relative imports, python path,.. I've never been able to understand it
This is the first time I hear this simple statement 👀
1st party package, 2nd party package, 3rd party package,..
What is “second party”? 👀
Your own modules?
huh
I might be misremembering, ruff had some categorization to sort imports. Maybe 2nd party wasn't there actually.
I've heard "2nd party dependency" to be used for the code you control, but pull in using the same tooling as external 3rd party packages
but it's not like the actual tooling can make a distinction between these and proper 3rd party packages
not sure what is the right forum for this question - has anyone been able to add the pandas library to their IDE? I've tried these 2 different installation packages conda-forge and PyPi and I end up spending hours troubleshooting those apps and have not yet made it to download Pandas library. Is there any other option for getting it?
Which IDE are you using? You might have to ask in #editors-ides
I'm using Pycharm 2025.3.3
Are you installing pandas from the console in your ide?
no so far I have downloaded conda-forge and trying to figure out how that works
Pycharm gives you a virtual environment of a copy of the interpreter and packages to use when you make a new project in it. Packages you install globally on your system won't be accessible to the python running in pycharm executing your code. If you go to the terminal in pycharm you'll have access to this python and it's pip and if you do pip install package_name it should work.
I knew there had to be an easier way - thanks so much
No problem
There's also a gui widget in the left bottom side where you can see the installed packages, and search for packages to install
And if you type import pandas or whatever in a script in your project, pycharm will suggest to install the package
hi guys, has anyone worked with nerdctl here?
Do you have a question about it?
Isnt local modules the third thing in Pep 8?
Are immutable servers literally immutable or just in principle? Take a simple example: I deploy an nginx server with some static files and I want to change the configuration, so normally I'd ssh in, update that and reload it, probably automating that.
I would assume that I can have an immutable server in principle by provisioning the server, configuring it, verifying it works and never modifying it again, only changing it through replacing it with another, not that I have to bake everything or most of everything into a golden image or something.
I'll concede that I might misunderstand what immutable servers are and if I do I feel like there is a valid underlying concept here that is being overlooked. The CEO of pulumi has this article of an example of "cattle not pets" which seems very similar.
https://www.pulumi.com/blog/deploy-wordpress-aws-pulumi-ansible/
The article by Martin Fowler on phoenix servers just says they're servers that are burnt down frequently and can rise from the ashes like a phoenix, but this thoughtworks article implied to me that only using golden images is valid? Even though I'm pretty sure I can easily get Phoenix servers while frying up base images from providers like digitalocean, even if in theory stuff could break due to mirrors being down, bad updates, and so on, but it feels comparable to any normal risk you take when managing most servers to me. 🤷♀️
https://martinfowler.com/bliki/PhoenixServer.html
https://www.thoughtworks.com/en-us/insights/blog/moving-to-phoenix-server-pattern-introduction
Only in principle.
Servers are immutable practically means u don't install anything with apt there after you created it. Also no modifications to /etc configs. But most important not having things like self updated python, installable dependencies should be frozen
You are allowed installing, modifying system level apps only during server image building stage like with Packer.
On server boot, lightweight init can make small modifications to /etc, booting docker daemon and etc, but it should be part of infrastructure code and universal to all servers, and like within one second fast without installing anything
And apps you launch as containers without needing to ssh it.
Docker images are version stored in Docker registry. Server just pulls different docker image versions
Also from point of view of work production grade immutable server means your containers do not have volumes mapped to host. Manage static files in S3, have any state of volumes in network attachable ones.
That allows easily servers scaling horizontally and recreating without regrets easily
Presuming container scheduling orchestrator is active like AWS ECS or EKS, it will restart apps fully on its own depending on servers availability. You do not need to relaunch even containers on your own, all code is declarative and auto synced in terms of deployment
For homelab I went more simple approach: just docker with volumes mapped to host, and controlling docker over ssh with opentofu. I broke the rules by having host mapped volumes, but as long as I backup and copy this single folder, server recreating/migrating is still manageably simple for me, despite forgetting everything a year later
Your application can be having config controlled by your container scheduling solution and defined as part of infra as a code, changeable without making new docker image
The important part in IAC code able to control all those app configurations remotely, without someone doing manual ssh to server and managing app configs outside of IAC. App management should be entirely in IAC for easy server recreation (which will become super easy if statics in S3 and volumes are remotely attachable)
If your server management is right like I described above, your server upgrade and rollback becomes simple as upgrading containerized app. Same exactly server image at all servers will run for sure with same deps for years if needed. Screwed up upgrade? Easy rollback to previous saved server image
The infrastructure as code book mentions baking images as well as frying them where updates even when making golden images are allowed.
And s3 does not work for me on my budget, at least the services I'm using at least, it's vulnerable to unsophisticated attacks that run up the bills because no rate limiting (digitalocean spaces in my case) and they only charge for bandwidth, other providers charge per request so it's not like putting a caching service in front would stop 404s which you also are billed for.
For me, I feel strongly like it would make sense to use an s3 bucket but replicate it to servers running nginx for public access, with rate limiting, and handle upgrades or management by swapping servers out and redoing the process.
So when you bake golden images and don't touch anything on the filesystem after besides use apps on it like docker, that's an immutable server, but frying an image with terraform/ansible to integrate your software, never touching it again, and starting from scratch when a change is needed isn't?
The infrastructure as code book mentions baking images as well as frying them where updates even when making golden images are allowed.
i was not able to comprehend it properly. But just to be sure, servers are meant to be changed by swapping their Server Images through terraform/pulumi and etc only.
Applications running in containers aren't part of this forbiddence.
And s3 does not work for me on my budget, at least the services I'm using at least, it's vulnerable to unsophisticated attacks that run up the bills because no rate limiting (digitalocean spaces in my case) and they only charge for bandwidth, other providers charge per request so it's not like putting a caching service in front would stop 404s which you also are billed for.
ergh, sure, then go as i do for homelab, just abuse hostpath volumes, but it will still make your servers more "vulnerable" to issues to upgrade and scale them. That is completely fine if you are the only dev on that project and forever will be so.
So when you bake golden images and don't touch anything on the filesystem after besides use apps on it like docker, that's an immutable server
yes, especially it is fully immutable server if it has no hostpath volumes also on it, and all applications are auto restored when servers die and created automatically by Master controlers of container scheduling system.
in situation when you still abuse hostpath for volumes of app... it is like ... 80% there towards immutable servers but not fully yet.
but frying an image with terraform/ansible to integrate your software, never touching it again, and starting from scratch when a change is needed isn't?
if you need changing server, then yes when needing change you just create another server and destroy previous one for your needs.
Since you continue abusing hostpath volumes, you would need also Migrating single folder with them between servers though.
You can achieve 95-100% server immutability if you will be abusing Digital Ocean Volumes in place for your hostpath volumes. With Digital Ocean Volumes all your state can be in a single volume, and you can be just shutting down all apps, recreating Droplet , having by iac same volume attached and then running the rest of iac code to launch back all apps
if you intend to use juts simple Docker for your container scheduling solution, remember that u can pick Droplet with image where Docker is already installed, DO offers that. So you need no system level changes at all
Beware of a good default production safety that people in iac use... at minimum your Droplet should be having Cloud level firewall configured to it allowing only 22, 80, 443 traffic https://registry.terraform.io/providers/digitalocean/digitalocean/latest/docs/resources/firewall
Ideally your droplet should exist only in Private network, but i am not sure it is feasiable to achieve in DO, since it is over simplistic provider
that will protect you against silly mistakes with Docker, when you binded your db to host port without any password or default password 😄 (you should not do it, but in case u did, DO firewall can prevent you from getting hacked hopefully if it was configured by iac fast enough)
I'm aware. In addition to the fact that some providers firewalls only cover traffic that comes from outside the data center. Servers in the same region aren't necessarily filtered out, not sure about digitalocean specifically but ovh has this problem regarding firewall rules and ddos protection.
If I were to deploy servers to replicate from a bucket and swap them out for upgrades, in my case I would go for replocating the entire bucket each time for every server, and every upgrade, not new volumes, starting from scratch. I'd have terraform or pulumi ssh in, run a command to replicate the data, wait for it to finish, and then set something up in the background to do the rest automatically. Server setup would be entirely fresh each time without having to share anything between them, a tweak to configuration like rate limiting, I'd try to do by starting from scratch with that setting. Not sure how efficient this is, because I haven't tried it yet, it might not be efficient but nothing will need to be copied between servers between setups except from the bucket.
👀 why would u replicate server from a bucket?
bucket is meant to be static files long term storage database, it is not supposed to participate in server creation
It wouldn't. The replication is for public access so that people can't run up the bills by sending a lot of requests to it and so that I can control rate limiting.
if you are not satisfied with DO Buckets, just use Volumes instead for "remote attachable storage space", and expose this data in whatever u wish way with rate limiting and etc
skip the buckets entirely if they do not work for you
and/or instead u can be using Buckets only internally by your app accessable (or self hosted S3 compatible storages like Garage or smth, they will have zero limitations besides giving you extra overhead in self hosting stuff)
I am satisfied with buckets though in the sense of accessing them to upload and manage data conveniently. I'm aiming for read only replicas to mitigate the issue.
<@&831776746206265384> probably a scam?
Am confused
What no.
Not you
The other guy
!cleanban 997868787145637968 scam
:incoming_envelope: :ok_hand: applied ban to @weary hearth permanently.
A folder tree on the left is a key feature that this appears to lack
I'm wondering why an IDE needs rich presense integration.
.
How much are you selling your account @gentle solstice ?
All you really need is syntax highlighting and auto complete (optionally via LSP). Additional features could include an integrated terminal, file browser, git integration, and run configurations.
!rule money
I will see how to implement it
I mean yeah, just added rich presence because I think its nice to have that
of course it does lack a lot of featuers... lsp, debugger, file explorer, codebase search, search, undo redo, terminal? and the repo is private. urs is not even an ide rn. its just a fancy text editor for python..
maybe take some reference from my ide which i built recently
https://github.com/adyanthm/axiom-desktop
It has all the features i mentioned above
Thank you for taking some time to give feedback. Really appreciate
Hey, added a terminal and issues checker aswell as undo, redo, and actual debugger with a redesigned UI. Thoughts ?
if this is your project and you want feedback, and it's open source, use #1468524576479641744
Yes its my project, but its not opensource.. yet
"yet" 
well i might want to see the debugger and all that before saying
Sure, here's the debugger and the terminal
Made a script with errors intentionally to showcase that the issues checker works
ok nice
why wait to share the code?
Cuz I'm still working on making the setup executable and making sure it works on Windows and other computers
you could get feedback if you made the source public. software's never done.
Yea.. but just making sure everything is alright before shipping. I don't want people to complain saying it doesn't work only to find out they didn't upgrade pip
color theme looks so damn good
ima steal it
thanks
yes steal

btw am 15 too
we can collab some ideas together
i built a code editor just like you
Yea you told me about it
dms then lets make some projects together :)
Hello
Hi folks, are there any tools, IntelliSense, especially VS code extensions that help with hinting class-based views' attributes and methods, or at least DRF generic views? One thing deterring me from using CBVs is the need to memorize a large list of attributes and methods that need to be overridden
general tool thing i'm working on
what a linux version?
Linux kernel v.6.x I don't remember the full version.
Distro used is Fedora Linux 43 Workstation Edition
hello guys
i hope u guys are enjoying my tool
What does it do ?
I feel like it looks pretty good close up but far out you can vaguely see the grid
i released new vẻ
ver*
do u wanna try it ?
(srry 4 my bad eng)
it has better UI than the old one
and more feat
no one is going to run an exe you uploaded that has no information about what it does.
my usual workflow should go like this eh?
->from dev branch i make a new worktree for feat x
->then in that, after coding shi, i do my local tests using like the turbo global test shi
->then if that works, i create a PR from that feat branch to test branch
->the qa (test branch) run their own tests (regression and integration tests)
->then if that works they merge that with the prod branch.
->in case it doesnt pass their tests, do they js reject that PR and I fix shi and send a new PR? etc etc
(granted i am working solo on this project, idek if i should be going thru all this)
but yeah would love some help or a guide i can read for this
was asking a friend and he kinda explained it a bit, thought i'd ask here as well
if you are working by yourself, you don't need a branch at all, but it's a good habit. You definitely don't need dev branch and prod branch then feature branch and test branch. That's a lot of different branches that serve no purpose.
Most projects, even large serious ones, need a main branch (production), and your branch for the work you are doing. Your branch gets tested, runs CI, is reviewed as a PR, etc. When it's ready, it's merged to main.
gotcha, i'll stick to a simple prod and dev branch then for now. Thanks for the advice!
if "prod" is main, and "dev" is "xpert/feature-34", then yes.
i know
can u gimme some tips ?
if you know this, why are you uploading exe's to github and asking people to run them?
https://github.com/Exen-pixel/optimizer-VIE-ver-/blob/164b574adbdb6b1e13cdea39f45cace27ae02899/Application code#L77
Further funny issue. accordingly the code we can read, it is 89 code lines generated through Claude or some other LLM entirely.
yet another AI slop project. Value of it is around zero. Author will not learn anything, others will not need it.
Application%20code line 77
create_btn("⚡ High Performance", lambda: [set_high_performance(), messagebox.showinfo("OK", "Đã bật High Performance!")]).pack(pady=5)```
tips possible to give in this situation:
- Do not use AI for anything. you are training person and it will harm your growth and will make you looking extremely bad for others.
- Start with learning Software development craftmanship https://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670 , this book has pretty much Everything u need to know in average to be building smth more in quality
- Try building projects that have more features in mind in general, that will challenge you in their complexity and things u can make.
- get through some book of learning the most basics to write code in general at all, Automating the boring stuff or smth https://automatetheboringstuff.com/ , as far as i see your current issue is needing to practice onto developing your writing and reading code skills to write code at all in small amounts. Students after some amount of months able to operate with thousands code lines in their head, once they adapted their brain to programming.
- find useful CLI/web/GUI frameworks to build your programs upon https://github.com/vinta/awesome-python , and other libs that could help you in implementing ideas yo uhave
Built a tiny distributed job bus that lets cloud scripts coordinate with local Termux workers over HTTP. No Redis, no Firebase, just Flask + SQLite.
Wrote a full breakdown here: https://dev.to/d_security/how-i-control-my-android-phone-from-a-cloud-server-using-100-lines-of-flask-2fl6
idk
tysm
What is the best practice for handling package versions in Python? Do I pin the exact version, or just leave the lower bound in pyproject.toml? I'm using uv and building a Django web app, btw.
You should use a lower bound and let the lock file pin the exact versions
I got recommended to pin the exact version for app
Sometimes I have an upper bound, too, in the case where I know the new version breaks something -- e.g. I use a binary library that hasn't been built for python3.14, so I'm forced to write requires-python = ">=3.12,<3.14"
if package owners are very responsible in following REAL SEMANTIC VERSIONING and you know it, and you have implemented unit testing.
you can be locking to for example >=3.1.2,<4.0.0 and it will work fine in updating itself when needed. With updating through Minor versions and Patches at the same time. Leave updating through Major version as still your own choice when ready.
if package owners are not reponsible at all in making things backward compatible (hello Django) and all Minor updates are BREAKING changes. Best locking to ~=3.1.* fuzzy version, in allowing patches only.
If you do not have unit testing in your project, such fuzzy lock to patches update only is maximum you can afford imo in general for all packages.
if package owners are complete dummies, having zero backward compatibility in any upgrade (usually they are your Coworkers). Or you are doing HACKISH overrides of their package through Monkey Patching. Best lock to specific version like ==3.1.2. Same true if u discovered breaking bug with the package and only specific version works
hot take, calling Django irresponsible.
has Django broken things from 5.1 to 5.2, or similar?
^^
https://docs.djangoproject.com/en/6.0/releases/5.2/#backwards-incompatible-changes-in-5-2
Each Minor version has list of backwards incompatible changes
ah, ok. I still wouldn;t call that irresponsible. They are very clear about their versioning strategy.
they have better support for these changes than 99% of projects.
Sure. We can say though they aren't semantic versioned. Probably pride versioned
right, they are not semantic versioned. it's important to understand the strategy a library uses.
Oracle Cloud is the worst thing I have ever used oh my god man
After my account provisioning took 16 hours instead of the advertised 15 minutes, I received an email saying my account was fully provisioned and that I can login. Using the login from the email, entering my credentials keeps telling me "You entered an incorrect user name or password". I was sure of my credentials but even so went as far as resetting my password. Even with the succesfully reset password, I still get "You entered an incorrect user name or password" and can't login at all
And support is literally impossible to reach without logging in
And I can't login without support's help
Oracle is known to be absolutely cursed among DevOps engineers for a reason
Do you think some people elevate semantic versioning above other strategies due to the name? It seems a bit too global. Like, other versioning strategies can also assign meaning to the parts of the version.
many believe that all packages are semantic versioned by default. they also believe that semantic versioning can be crisply and clearly defined, but there are plenty of fuzzy edges that are hard to encapsulate in a number.
maybe it would've been better called "compatibility versioning" or something like that
I wonder how versioning schemes impact software. That seems like a fun research topic
Yeah I just wanted their free tier because it's definitely the best
But it's clear now why
Because nobody uses it
discord 335...
they increase the build number so easily now
it used to be very limited that they build number would actually increase
and its gotten worse since then so
wow
practically speaking all hosting is not free or a trap. I can recommend Hetzner as cheapest nice hosting 🙂
hetzner hates trans people iirc
the only thing is definitely free => deploying static assets to Github Pages / and other similar "provider name Pages"
discord took from oct 2015 to june 2018 to go from version 1.6.8 to v7 on their android mobile app
compare that to now that they're on version 327
https://www.reddit.com/r/hetzner/comments/1d05r2j/so_any_alternatives_to_hetzner_dedi/
found thread discussing it, it does not sound as truthful information
Looks to be Hetzner is only fighting people distributing porn, according to history more specifically looks like they were fighting "child p" https://mastodon.ie/@kelpana/112172716658895776
Yeah I'm hosting my FE in GH Pages
The BE is what I'm worried about
I might just turn my laptop into a server
to make my pet projects free, I wrote my "backend" in golang to be Static Site Generator that generates frontend static assets 😏
And just have periodic or on call triggered gh workflow rerunning it to update it when necessary
Technically the result is not backend at all, it is pure frontend, but at least i did not use Javascript Modern frameworks to make it and managed making it all in Go :]
Wdym?
https://slimythemoon.github.io/DiscoNavmap/#q= (almost original written in jquery)
This space map COULD HAVE been written in Modern JS framework. (And another person in the past did so pure through js and gazilion of Jqueries, and 5 dependencies in 5 different languages).
https://darklab8.github.io/fl-data-discovery/map.html (my map version in Go)
I remade it a month ago to golang, using its Templ go language i TEMPLATE https://templ.guide/ all html/css/js files in files like that https://github.com/darklab8/fl-darkstat/blob/master/darkmap/front/galaxy.templ , to generate the map from Golang at a build time into Html,css,js for deployment to Github pages. During dev local usage it renders on a fly from memory and works kind of like backendish app with reusing the same Templates and the same code logic, just having a little if switch.
I used only Very small amount (10 times less JS than original had) of Vanilla JS to "sprinkle" some interactivity and a tiny bit of htmx
i evaluated all the features i need to make and realized that everything is doable with just templating from golang. I do not need modern js frameworks to make it comfy.
On cron job in Github Actions it is auto updates once in a day, or triggered manually when game new version is detected and gh workflow is called by curl https://github.com/darklab8/fl-data-discovery/blob/master/.github/workflows/publish.yaml
Thus we have web project made comfortably Not In JS for 95% (in Go), yet pretty much frontedish project deployable to Github Pages with auto updating capabilities to catch up with changing content on its own 😄
when we make SSG, Static Site Generator project, we can make it interactive if necessary by making "calls" to other already prerendered files with jsons/html content and etc. Backend DOES NOT HAVE to exist, for frontend to be able making queries to smth. Backend data can be prerendered in advance and existing as files querable by front
Looks like scifi Skyrim
this online map was made for space dog fighter game Freelancer (2003) 🙂 https://www.youtube.com/watch?v=DiT2cxxEcNM
it works for different modding communities of it and was deployed 4 times at least for different its mods.
Very old game with very die hard fans. We are all trapped there to be present forever.
Released version of the Intro from the epic Freelancer game. Remastered in Full HD.
That was a great game! Microsoft should have made a sequel for it.
¡Hola! Soy David, developer independiente de Zaragoza.
Acabo de lanzar Worvi - un template de chatbot WhatsApp con IA que detecta patrones de conversación automáticamente.
Stack: Python + FastAPI + Claude API
Setup: 5 minutos sin código
Si les interesa, pueden verlo aquí: https://kitbot.gumroad.com/l/worvi-whatsapp
¿Alguien más ha trabajado con webhooks de WhatsApp Business API? 👇
Un chatbot de WhatsApp Business que atiende a tus clientes con IA. Listo en 15 minutos.Worvi es una plantilla profesional en Python que conecta WhatsApp Business con Claude (la IA de Anthropic) para que tu negocio responda automáticamente consultas, capture leads y atienda clientes 24/7 — sin que suene a robot.Para quién es esto Desarrollado...
<@&831776746206265384> ads in Spanish
!cleanban 1319363827648958525 1d first message ad
:incoming_envelope: :ok_hand: applied ban to @fallow hamlet until <t:1777596586:f> (1 day).
Hey guys I came across this server I wondering where we actually can post our github to find feedback I wanna share a tool I created using Python but I don't want raise issue like ads content or something like, it is a Open Source project that I am looking for share
Good, Thanks
HEllo
I have a question about whether it is more practical to store a Discord bot token in a .env file or in Docker Secrets with Swarm. 
Use Docker Secrets. .env is fine for local dev, but it’s not secure for production—easy to leak or commit by mistake. Docker Secrets are designed for this use case.
what is ty doing? theres no point in zed using 26MB RAM when ty is going to do this
and it took nearly a minute to finish
here pyrefly lsp is almost instantly providing completions on same code (through pulsar editor)
you should probably ask/report in the astral server
oh, its not memory leak, i think its normally working, its just my 30K LOC project thats 100% untyped
now that it's owned by OpenAI, maybe they just want people to buy more RAM 
what!?
Astral was recently acquired by OpenAI https://openai.com/index/openai-to-acquire-astral/
for LSP, zuban exists I guess
haven't tried it though
4.4GB for a 30k line project is definitely unacceptable, it's a perfromance bug even if no leak occurs
Could be something related to that. But that's not uncommon
type checkers ideally should support gradually adding types to an untyped codebase
i tried to make zuban work with pulsar (assuming it uses same protocol as pylsp), and zuban panicked and crashed
so ig pyrefly is the only usable lsp
You re welcome
!warn 970292961000701992 You cannot use Python Discord to seek jobs of any kind. Your other messages suggest that you intend to be paid. Telling people to DM you also suggests that you intend to be paid.
:incoming_envelope: :ok_hand: applied warning to @velvet cradle.
Sorry guys
Summary ty hangs indefinitely (consuming many GB of RAM, never finishing) when checking a single function in dagster-graphql. Commenting out the body of that one function makes the package check no...
crosspost from ot0 but can someone explain why/when i would want to use proxmox? i dont see why i want to virtualize/what benefits it has over just spinning up a docker container bare metal
TL;DR: not everything can be containerized
well that isnt the right mindset /j
im kindofaware that its better for security but im not really concerned about that
Its not really a security thing
its not like all of my services are exposed to the public interwebs anyways (they are)
VMs are a maintenance thing
hm
You can back up a copy of your VM's virtual hard drive before you update something, and if it blows up you click the restore button and 10 seconds later boom its working again
If you want a new server, you just click the ➕ button and a new server pops up, you don't have to screw with hardware or installing an OS
ic ic
You can also do multiple nodes like Kubernetes and load balance your VMs
thats neat
anyway ty (astral type checker)
do i send the check to doggo co. LLC /j
tyty
(astral type checker)
^2
i cant see ty without thinking of the type checker by astral now
i mean
the OpenAI Codex Team
my bad
lmao
Greetings, more a VSCode-related question: Is there any working solution to load secrets (like API keys) from an .env file in VSCode's mcp.json file? Known mechanics like ${env:MYSECRET} does not work. Not even when I export the variable in the terminal first. Seems like variables do not get resolved in mcp.json at all.
!rule 10 @jaunty wraith
thanks
Nahh
guys im making a game with python and im using ursina as an engine but every time i run it doesnt run a game it just says point 0 wat engine should i use to make a fairly simple game
Also see #game-development
PLs can anyone help me with installing discord in python
hammer
wrench
no.
I prefer the scalpel
This is an on-topic channel on a python server
you might assume that, as the topic suggests, it's about Python tooling
wait python tooling? the description says For discussing editors, IDEs, and tools like pip or pipenv.
pipenv > pip
nano > vim
sublime > atom
ubuntu > centos
python 3.6 > python 2.7
success, I actually got Nix to read a channel topic
that‘s the first time I hear someone recommend nano
the Keybinds are very cryptic to meS
systemctl edit uses that for god knows why
i only know ctrl o, ctrl x for nano
nano has the keybinds at the bottom of the screen
yeah, and that‘s a bad sign
ctrl x is all you ever need :D
and ctrl o
M-x help
yeah cause vim is so self-documenting
ofc it is
mentioning nano and vim in the same sentence usually sparks more of a debate. Shortest debate ever!
i mean
i for insert
c for cut
and so on, that‘s what I meant
if you go by what the commands do you can remember them pretty well
I'm fine with this not being about editor wars
Are there plugins for nano?
i didnt plan to make it one :(
Was just curious about nano
I think you can enable nano syntax highlighting
were those all serious statements, Inver?
yes
huh
I am infact a heathen
it amuses me how confused people get when they're using nano and I tell them to cut/uncut
they're like "WHY IS IT CALLED UNCUT?"

how to quit vim
:q
when I was doing my short stint of system adminstration work I feel like using nano would have been a nightmare
This is the current world record for the Vim Exit% Speedrun. This is fairly optimised as Vim runs go, but there's still a lot of room to improve on the route...
I hope this wasn't too off-topic
I mean it's on-topic technically
let's keep the memery to a minimum for the time being
exiting vim is hard we need guides and speedruns for this 😮
No but really, @dawn stump, can you customize nano? I never really looked into it.
@blazing prawn the truth is I don't actually use console text editors anymore, given that everything goes through git nowadays, I don't remember the last time I used either nano or vim
dont think so
I also don‘t recall nano having syntax highlighting, but maybe I just didn‘t enable it
nano is rly simple
I see
nano definitely has at least limited highlighting
maybe it did i cant remember 🤔
I've never seen it highlight anything
but maybe there's a feature there. deep down.
deep inside its heart of hearts.
you have to buy it dinner first
back when I used it in school it always highlighted my py and html files
yeah, a nice dinner. that'll loosen the features.
Nano does have syntax highlighting
maybe it's a distro dependent configuration?
It has to be enabled
ubuntu definitely ships a version with some basic highlighting, but it .. what gdude just said
ah
same
not sure learning about Nano is valuable 😂
best to never use it
did you know that with :set spell spelllang=en_us you can get a spellchecker for vim
yes, but i dont recall wanting a spellchecker in vim
I use nano for small edits on remote servers but I wouldn't use it for real development :P
idea‘s spellchecker is nice, but i find it to be annoying most of the times
remote servers can have vim though instead of nano
Yeah it's for small edits, the idea checker is nice once you add the false positives to the dictionary
They can, and if you know vim that's great. But I'm lazy haha
of course, when you‘re writing line 1300 of your AbstractMisterBeanFactory class, i can see it being helpful in finding typos
thats probably true
if you're writing something like that,
best to take it to IDE rly
what if i like my headless openbsd systems
then you can be a meme 😄
i know people from some security companies who do that
I never needed vim 
then youve never used git from a terminal
some people like the old ways
@delicate gorge ? what
oh its not about the old ways
of course I have. I just use nano to edit my commit messages, or a graphical editor
a r c h
openbsd is fine TBH I used it in VM for a while
can have hardware driver issues
if u have weird hardware
Whats ranger
a keeper of a park, forest, or area of countryside.
@heavy knot https://wiki.archlinux.org/index.php/Ranger
ty
ah yeah i had that page open but i forgot to send it here for you haha
Lol
https://dev.to/gabeguz/git-bundle-2l5o very interesting
I don't do advanced git LOL
i probably don‘t even know half of git‘s commands and I use it daily
There‘s some website that generates manpages that look like git manpages but are just random nonsense
I'm not sure of the syntax of anything ever
I look things up a LOT
As long as you know what the main commands do, i.e. pull, push, fetch, commit, add, rm, rebase, branch, checkout
you can do things fine
ye i know those
then for the most part, you are gucci
bot.xkcd("git")
oh we dont have that command yet
tsk tsk, someone get on it
I'm trying to get better at CI
now that Gitlab has some CI built in
that's a nice way to start I guess
I think its important for me to draw a boundary between my job and someone else's job because I have a bunch of things to learn and my skills would be better improved learning something else. Not to say I'll be completely ignorant of CI or something, but its not really going to help me and someone else will be responsible for it anyway
Though now that I think about it, engineering companies might have non-existent devops policies
Whoops
Mechatronic engineering. Hopefully in robotics R&D
Either the electrical bits or the software bits
Or control
no more than programming :P
lol
Hi guys! Is there a coprehensive rewue of all tools that may make life easier for newbies like me? I tried to look for a pinned messages but haven't find anything 😦
bot.tags.get("resources")
It can be difficult to know where to begin when you are first starting out with Python. On our website, we have compiled a list of both free and paid resources that we recommend for learning and mastering Python.
It is hard to say exactly where you should start, as everyone will have a different prefered method of learning, but whether you like video tutorials, books or courses, you should find a suitable resource on our resources page
@dense ingot ^
Thanks! @wicked flicker
Thank @forest bay but sure 😃
I can't seem to find a pycharm theme I like. Looking for something along the lines of city lights from atom if anyone has a suggestion. https://github.com/Yummygum/city-lights-syntax-vsc
editor colour schemes can be entirely customized
I personally use the material theme
I'm not really sure what i'm doing, or I might just customize it all myself lol
@smoky slate check out material theme
It has many different colorscheme presets which look good
There are also options to make it look more compact
@copper compass @wicked flicker Thanks!
Material Darker is pretty decent 😃
@wicked flicker What do you mean by compact?
There's a settings section for the theme, it allows you to reduce the padding between items
For example in the tree view
I hate it when it looks so bloated
Cool, thanks! Will have to play with the settings some 😃

can some1 just send me the IDLE link? to type python codes? or IDE.. i dun remember the name exactly
download link?
IDLE is bundled with Python, but it's not great
umm
Mu-Editor would be a better way to go
I'll get the link, one sec
VS Code or Pycharm
Not if they're a beginner, cake
why ?
Because there's so many other things you have to figure out with it, when they should be strictly focusing on learning to code first
One thing at a time
VS Code is just a text editor though
its not an IDE like Pycharm
VSCode is fine if you have some experience with programming already, but an editor like Mu will be better for someone who's new to programming
^^
IDLE is probably perfectly fine for the beginner. Easy to write, run, and test in
Mu is that much easier and cleaner looking
And only then
line numbers are important I think
What about
Sure, but it's not terrible to use
Sublime
But there are better beginner alternatives
*banned
Mu and Thonny are the two I suggest to people
Sublime is fairly similar to VS Code I think
Sublime and VS Code are great for people who are familiar with programming concepts
Mu looks nice
Or even basic command line skills
The less that people have to deal with their editor when they're just learning, the better
I like VS Code myself personally
I prefer just VS
Remember what it's like to be a beginner guys. Too much at once can be intimidating and can cause people to give up entirely
Derp we just scared him probably lol
Or he clicked the link and went on his merry way, either way
True
I didn't know about Mu or Thonny, they do look very friendly
Yep
so should i go with the Mu thing?
I used Thonny for a long time, and Grey introduced me to Mu. I try to keep an eye out for beginner stuff, since that's where I like to help people the most
I would say yes, Fox
Mu is a good place to start
You can still download it
You can also install it via pip
Just scroll down to the Windows Installer
oh
self.unsubscribe()
@astral vector Please try to keep bot commands in #bot-commands to reduce clutter
i just figured that out thank you
Pretty
somewhat unrelated but i thought you guys would find this useful
it's pretty amazing
(to give a comparsion, gcc took 17 seconds to build a project of mine; zapcc took 3-4)
wow, that's interesting
doesn't that only speed up recompilation?
rather than initial compilation
the site uses cookies but has absolutely no dynamic content
there's almost no info on it either
it's on github
okay, yeah, they have another page which is a little less misleading
they have 3 read more links that link to an FAQ
and that page redirects back to the homepage
that's weird
FAQ used to work
'Similarly, on incremental recompilations, Zapcc can be up to 50x faster than Clang. '
also I will say this has only passing relevance to this server
since C modules
:P
can we get variable explorer in vs code
from the thread you pulled your image from,
just in case it wasn't clear that the VSCode team will not be extending this functionality themselves any time soon
Really odd request
VS Code is an editor
If you want features like that, you need an IDE
if you want heavier features
a text editor is a bad choice ye
is there a tool that converts poorly formatted code to pep8?
well the problem would be parsing the poorly formatted code
its hard to parse code when you don't know what format it could be in
its like trying to parse HTML, very reee
yapf
Yet Another Parser Failure? 🤔
parsing is big headache
this is becoming a go-to for many: https://github.com/ambv/black
i strongly disagree with the "only double quotes" decision but it's otherwise solid
I use " only.
black is awful
you can't configure it
and it doesn't match a lot of what we like about our styles here at pydis
You can though
the non-configurability is its selling point though
philosophy is "write your code however you like, but let us normalize it"
and there are a few config things here and there yeah
i like to configure everything
I mean I also don't like things that format my code for me
Did they remove the config-- oh
isn't a linter a better idea
read black's README
or yapf's
oh it's in yapf's
Most of the current formatters for Python --- e.g., autopep8, and pep8ify --- are made to remove lint errors from code. This has some obvious limitations. For instance, code that conforms to the PEP 8 guidelines may not be reformatted. But it doesn't mean that the code looks good.
control alt r 👌 pycharm we good
I agree with flake8 for the most part
I think there is a balance between linters, and what they do
some like linters to be super configurable in their control
some like it to just work and set whatever standard
We can't forget the elephant in the room
the linter that uses every other linter available?
No matter if you follow a style guide or not your code won't actually change
well yeah, it's about style
🤔
Yes
poor style can like
cause future bugs
The linter that uses every other linter
@kind bough it's ctrl alt I
You mean snekcheck? @copper compass
there are a whole lot of them
coala is one more that brings unified linting to multiple languages
That actually sounds kind of interesting
well its a hard problem to solve to bring that unified configuration that works for every linter across all languages
hey so i was interested in getting a new set of screwdrivers?
I'd like them to have some sort of neodymium magnet in the base so all the attachments are magnetic
I'm also interested in something that has pretty much all the bits required for tech repair etc
but a must have is a torsion bar of some kind

Chrome Vanadium is a requirement.
rekt
'hammer' was literally the first word i this channel :D
"For discussing editors, IDEs,...."
Vanadium 🤔
xD
🤔 Chromium-vanadium steel (symbol Cr-V or CrV; 6000-series SAE steel grades) is a group of steel alloys incorporating carbon, manganese, phosphorus, sulfur, silicon, chromium, and vanadium.
goodnight guys o/
bloated
\o
Nn Inver
Go to off-topic, you gon' get muted
templates for Django and Flask etc
I've been using it at work for 2 days now and it feels the same while doing some flask shit
or am I too basic?
pycharm pro remote interpreter
supports some extra stuff
I think so ye
for JS ?
pro supports tons of web stuff, yeah
like non-python stuff
html, js, css, all that jazz
SQL also
i meant someone elses plugin
right yeah, you have the whole database integration stuff
hmmmm
docker/vagrant support
but jetbrains make a seperate IDE for databases, which is better
i guess i need to open some other projects and check it out
oooooh
docker support
yea
they have an IDE called Datagrip
that you can run alongside Pycharm
the fancy stuff
for DB work
remote debugging
it supports deployments and stuff too
okay, guess i just need to explore it more
for front end Webstorm is gud
pycharm pro supports everything webstorm does
try it
ook
@lost rock I'm saying the full VS, at least Visual Studio C#, used to be 2000% worse.
they've really cleaned it up
Visual Studio used to be a massive bloat-bomb
you can get a leaner install these days
not just can, the one you get if you just go to the website and get community edition or whatever is really impressive compared to, yeah, the "bloat-bomb" it used to be.
but I never got back to C# development after that internship, so...
Qt existed 10 years ago?
I had no idea lol
and Qt Creator didn't work so I found some thing that added Qt Designer to VS
but VS's intellisense was shite back then
had to keep deleting the intellisense file
I think the JetBrains C# IDE is almost definitely better, though. Rider, is it?
some C# people really praise intellisense
Ryder?
didn't try it
They.... that ^
I used the resharper plugin with visual studio
which is a jetbrains extension for VS
I bought a big fat java textbook for this summer 
they make quality shit. but also all their IDEs are pretty similar
if you like pycharm, you'll like the others.
they're all basically just modules for IDEA
the Android SDK is based on it
yeah, pycharm pro is good for basically everything I do, not just Python
ye i love pycharm so IDEA should be gud for me
should be.
a brilliant IDE
yeah I could never dump pycharm
it's just so integrated into my workflow now
as an IDE should be

wow lennythonk
👍
wow, Aperture

zsh 👌
u started
no u

ByteCommander, stop getting so personal. That is not a nice thing to say.
geddouddahere
GDPRdude, stop getting so personal. That is not a nice thing to say.
hello guys anyone knows how to insert tables into jupyter notebook?
VScode now supports portable mode: https://code.visualstudio.com/docs/editor/portable
Standalone executable you can dump on a flash drive or whatever
ooooooooh
Also drag and drop from explorer into vscode
Is Pycharm the best IDE for python?
it's a subjective matter, but PyCharm has as pretty exceptional featureset that it's difficult to find anywhere else
PyCharm is the best IDE if what you want is a fully-featured toolset
What do you guys use for visualisations? Right now I'm only in need of static graphs, but it would be nice having something more powerful, maybe interactive for the future.
I'm kind of tiredof matplotlib and its API. I've heard good things about bokeh, Altair, and seaborn.
What's your favourite package and why?
Matplotlib is the most powerful option there is
It's API is alright
Not the best but it could be worse
I use MATLAB when I really get tired of it
I haven't used Altair
but I use bokeh, seaborn and matplotlib loads
Seaborn has a fairly good looking style out of the box
and bokeh can do some really pretty things
you might want to check out R and JS visualisation libraries
D3.JS is cool
so in the python ide that comes pre installed with python, you can check variables after the code has run.. how can i do this in visual code
First, the thing you call IDE ( i assume you are referring to IDLE) is not an IDE its an editor (a bad one)
Second, what IDLE can easily be imitated by running the code with python -i mysript.py from a command line
thank you
Just trying out VS Code, been trying to find an editor/IDE I like. So far it seems awesome. I feel conflicted saying that about a Microsoft product..
VS code is really nice
I use the debugger in PyCharm too much to swap but it’s nice to make quick edits on files
What about the VS Code debugger is not sufficient for you?
Doesn’t support remote interpreters afaik
Ah, okay. Well, development of VS Code seems very active - hopefully they will keep it up 😃
it's great
I like pdb
tmux > screen
Not even a competition, you're right
ye tmux is good
c:
Tuxedo Mux
:P
ooh
@crystal depot pycharm is great
it does have it's on env support, so you can install packages into the app itself, and run them without the need of a separate env folder or set up
that seems to be on by default on macOS unless i turned it on somehow on accident
is each project it’s own env?
but it does not have support for all the packages that you may want to install. So, sometime you may want to run a seperate env
i’ve never messed with virtual env (i think that’s what it is called)
i’m worries it’ll complicate what i’m doing but it does seem nice to not have random modules installed at a system elvel
oh, i see
i noticed that it makes a separate folder in the root of the project and the project is pretty large size wise because of it, is that normal?
I settled with pycharm, personally, but you will have to choose what works for you
it creates a physical folder?
i think so, let me check
I've never used PyCharm, but the workflow it supports is extremely common for Python development. an entirely separate environment for every single project
venv folder
oh
which has a bin, include and lib folder
ok, that makes sense
see ^ lucy's response
you can opt to have your own env folder, or you can use that one.
virtualenvironments are about as important to Python work as pip itself
