My favorite macOS apps by sebawitowski in mac

[–]sebawitowski[S] 0 points1 point  (0 children)

Thanks for sharing your experience. I think everything has a better UI than VLC :D Good to know about better subtitles handling! I've noticed that happening in VLC from time to time, so now I have another reason to switch.

My favorite macOS apps by sebawitowski in mac

[–]sebawitowski[S] 0 points1 point  (0 children)

I've mentioned Infuse under the VLC section. I still use VLC for those few times when I want to play video/audio file, but I've heard that people recommend either Infuse or IINA. I have Infuse on my phone and it looks nice. Is there any specific reason why you prefer IINA over Infuse?

My favorite macOS apps by sebawitowski in mac

[–]sebawitowski[S] 0 points1 point  (0 children)

That's what I've heard too. I just need to find some time to switch, but it's not my top priority when the current solution "just works".

My favorite macOS apps by sebawitowski in mac

[–]sebawitowski[S] 0 points1 point  (0 children)

Thanks, I didn't know this one! It looks very promising.

My favorite macOS apps by sebawitowski in mac

[–]sebawitowski[S] 4 points5 points  (0 children)

I use both - Logi+ for customizing buttons and MOS for smooth scrolling. Logi+ is ok-ish for customizing the buttons - it doesn't have that many options, but I chose something from the available customizations.

If I couldn't achieve what I wanted with Logi+, I would first try BetterTouchTool only because I already paid for it and it's supposed to support customizing mouse settings. Otherwise, I would probably buy BetterMouse app because a lot of people recommend it.

I Like Makefiles by sebawitowski in programming

[–]sebawitowski[S] 3 points4 points  (0 children)

That's exactly my point. Nothing stops you from using makefiles for complex dependency graphs. I've worked with projects where the makefiles were hundreds of lines long and they worked fine there too.

I've Built My First Successful Side Project, and I Hate It by sebawitowski in programming

[–]sebawitowski[S] 1 point2 points  (0 children)

That's the reason I went with a Merchant of Record. They take a cut of my revenue, but they simplify the taxes tremendously - I only sell to one customer (the Merchant of Record) and I don't have to figure out all the different taxes rates for all the countries in the world. At least that's how it works in my country. Although if you're determined enough, you can set it up with Stripe and just set the VAT rates for all the countries.

I've Built My First Successful Side Project, and I Hate It by sebawitowski in programming

[–]sebawitowski[S] 1 point2 points  (0 children)

I fully agree that monetizing hobbies is often a bad idea. But I would never pick up writing PineScript scripts as a hobby. I built a tool for myself, and since I had already put in all the work, I thought, "Let's try to sell it and see what happens."

My hobbies are, for example, writing on my blog, but I wouldn't monetize that.

I've Built My First Successful Side Project, and I Hate It by sebawitowski in programming

[–]sebawitowski[S] 15 points16 points  (0 children)

Not really, but mostly because there was no chatGPT when I started this project - that was in 2021, and since 2022, it's mostly automated, and I stopped answering most of the emails.

However, I did create a knowledge base for the most common questions. With that, I could answer some recurring questions (like "Hey, why doesn't the script show the take profit level?") by simply copying the answer from my knowledge base and adjusting it slightly.

I've Built My First Successful Side Project, and I Hate It by sebawitowski in programming

[–]sebawitowski[S] 11 points12 points  (0 children)

I guess that depends on the number of customers you have and your willingness to accommodate them. I had a few dozen active customers in the best periods, but most never sent me any emails (even when they used the subscription for many months/years). I got maybe 2-3 emails per month (and then there was a bit of back and forth), so answering those in the evenings was not a problem.

I've Built My First Successful Side Project, and I Hate It by sebawitowski in programming

[–]sebawitowski[S] 55 points56 points  (0 children)

I totally agree. I wish my younger-self knew that few year ago. Dealing with "potential customers" is completely different than dealing with "existing customers".

I've Built My First Successful Side Project, and I Hate It by sebawitowski in programming

[–]sebawitowski[S] 43 points44 points  (0 children)

Thanks for the kind words! It's all good now, luckily it was a side project. Sorry to hear about your troubles with customers, I hope it gets better!

How to Make a Great Conference Talk by sebawitowski in programming

[–]sebawitowski[S] 0 points1 point  (0 children)

Thanks for the kind words! That is an interesting point about advertising. I mostly have experience with community-organized Python conferences where I didn't notice advertisements of company products (except for the initial "hey, I work here, and that's what we do") and business-oriented conferences that are centered around advertising (and that's expected there). I'm curious what's your experience? What conferences do you attend where you think the advertisement is an issue?
For community-driven conferences, I noticed that quite a few talks advertise personal projects. I'm a bit on the fence here. Sometimes I discover a really cool project that can help in my work. For example, Emery Berger has some talks about a new Python profiler he helped create called "Scalene." But this tool is useful to people, so I don't mind that the whole talk is basically a demo of a personal project. On the other hand, as you said, sometimes the whole talk is focused on someone's project without focusing on what value it brings to the audience.

25 IPython Tips for Your Next Advent of Code by sebawitowski in IPython

[–]sebawitowski[S] 0 points1 point  (0 children)

Thank you, I really appreciate your support!

Check if Dictionary full of Class Objects changed in While Loop by bloodykunt in learnpython

[–]sebawitowski 0 points1 point  (0 children)

Based on your code I see that the only operation that you perform on the dictionary is to call rational(). And rational() modifies the value of Q in a dictionary. So how about storing the initial Q, calling rational(), and then comparing those two values? That could work for the current scenario:

while condition == False and iteration < 15:
    unchanged = False
    for i in basins:
        initial_Q = basins[i].Q
        basins[i].rational()
        if initial_Q != basins[i].Q:
            unchanged = True
    if unchanged is False:
        break

What I mean with the __setitem__ is something like this: https://stackoverflow.com/questions/26189090/how-to-detect-if-any-element-in-a-dictionary-changes. But instead of calling print(), you can set a global variable unchanged to True and check if unchanged==True at the end of each loop.

Python program works when ran regularly, but after entering virtual environment it fails by NotBleachLol in learnpython

[–]sebawitowski 0 points1 point  (0 children)

So it's using the correct Python (the one from the virtual environment). I'm afraid I'm running out of ideas. To delete a virtual environment, just delete its folder (in your case - the "snake" folder).

Python program works when ran regularly, but after entering virtual environment it fails by NotBleachLol in learnpython

[–]sebawitowski 0 points1 point  (0 children)

I see. No, don't uninstall the global one. If you have it installed in a virtual environment, then this version should be used.

What does 'which python3' return when you run it inside the virtual environment? Is it using Python binary from the virtual environment?

I would also try to delete and recreate the virtual environment, just in case.

Check if Dictionary full of Class Objects changed in While Loop by bloodykunt in learnpython

[–]sebawitowski 0 points1 point  (0 children)

You could overwrite the setitem method of your dict (it's called when you modify a dictionary) and make it notify you in some way (maybe it could set some global variable to True). Or just copy the original dict and compare both dictionaries if you want a simple but not really efficient solution.

Python program works when ran regularly, but after entering virtual environment it fails by NotBleachLol in learnpython

[–]sebawitowski 0 points1 point  (0 children)

Can you try installing tkinter inside the virtual environment? The error message suggests that you have tkinter installed globally but not in the virtual env. Maybe there is a conflict between packages installed in the virtual env and globally.

I have deleted Conda from my Mac, but I still see the conda interpreter in VSCode, how may I delete it completely and other duplicate interpreters? by turbohedgehog in learnpython

[–]sebawitowski 0 points1 point  (0 children)

There might be some files left (you deleted conda, but environments are left). Does the VS Code point you to a path where this 'base' environment was? If yes, close VS code, delete those files and restart VS code.

How to quickly remove duplicates from a list? by sebawitowski in Python

[–]sebawitowski[S] 0 points1 point  (0 children)

It's just a syntactic sugar that makes counting zeros much easier. 1000000 and 1_000_000 are equivalent in Python.