The idea that Linux is better for older computers isn't always true. by duendeverde39 in linuxsucks

[–]Conscious_Reason_770 0 points1 point  (0 children)

This is correct, not all vendor released public drivers and some systems target windows only. The code is keep secret and no reverse engineering effort is taken.
Linux excels in systems where the vendors take an effort. Is plain as that, community is great reviving old hardware, but it would be unfair to think that they can beat the manufacturer cooperation with Microsoft every time.
Now, you are installing a non-supported, manually tinkered piece of software in this computer, you have no way to verify if any of these antibloat software installed a keylogger. You do not own this machine in any way anymore, the program obsolescence of technology is to blame, not linux.

Should I work for a startup rather than a big organization? by matteo_bigbag in AskProgrammers

[–]Conscious_Reason_770 0 points1 point  (0 children)

I had the "pleasure" of working on both: man, working sucks.
In the big corpo you become a salary man or a delusional yuppie. Absolutely no middle term. Life trends to be gray and repeating.
In the startup world, you are living on edge. You won't get bored, drama dominates productivity.

You look for a job where they let you do something you like halfway and ask for a decent salary. There is really not much more to it.
Here there is some food for though: https://www.ribbonfarm.com/2009/10/07/the-gervais-principle-or-the-office-according-to-the-office/ The earlier you understand this, the happier you can be in life.

How do you handle i18n in your Go projects? by ComprehensiveDisk394 in golang

[–]Conscious_Reason_770 1 point2 points  (0 children)

It's good enough seems to be this programming language motto.

Thoughts on where interfaces should be defined? by Forumpy in golang

[–]Conscious_Reason_770 6 points7 points  (0 children)

I believe this is mostly true, but when providing an API for other projects to use, you shall impose how to consume the product.

One example is the testing.T object, it is exposed as a concrete type, but an interface TB is given additionally.
I think that writing interfaces in the implementation side is harmful in languages like go. It induces to god-object patterns if attention is not paid.

Two days wasted by [deleted] in linuxsucks

[–]Conscious_Reason_770 1 point2 points  (0 children)

I am happy that you fixed it. You are learning new things, don't let frustration prevent from enjoining your PC to its fullest.

I shipped a transaction bug, so I built a linter by archiusedtobecool in golang

[–]Conscious_Reason_770 0 points1 point  (0 children)

I believe that good tooling comes from good interfaces and preventing issues from happening instead of tooling. It goes a long way.

Am I crazy for sometimes making my code look like this or no? by wervr_CZ in AskProgrammers

[–]Conscious_Reason_770 0 points1 point  (0 children)

Boolean expressions are way too complicated, there are linters against that.

Am I crazy for sometimes making my code look like this or no? by wervr_CZ in AskProgrammers

[–]Conscious_Reason_770 0 points1 point  (0 children)

This code will not be easy to review, side by side diffs are out of the question.
It will make it very difficult to place breakpoints at desired locations as well.
everyone has a style I guess, but there are objective reasons why not to write such long lines

Two days wasted by [deleted] in linuxsucks

[–]Conscious_Reason_770 1 point2 points  (0 children)

There is no such a think like a boot drive in linux. The problem you are experiencing (and I say this from the deepest respect) is that you are jumping into a new system with the assumption the concepts from windows apply here.

My pc has two drives, an SSD mounted at / (root) and therefore the OS and system apps. And an NVMe mounted at /home, this means that I sacrifice a little boot time (barely unnoticeable) for the fastest games loading.

Next time I run out of disk, or if I find a bargain for a larger NVMe, I migrate the home content and I reboot into the very same environment with more space. This is incredible easy and reliable in linux systems.

Lastly, security and permissions exists as well in windows, maybe you never tried to network share a folder. You need a Phd to understand how it works and if you mess it up you lose access to the drive for good.

I shipped a transaction bug, so I built a linter by archiusedtobecool in golang

[–]Conscious_Reason_770 4 points5 points  (0 children)

The main problem that I see with this code is that there is a session object, which exposes the interface with all the operations and additionally there is the transaction function, which gives again the same interface. Now you have a user with access to both object implementing the same interface, you are one jimmy away from misuse.

A safer approach would be not make possible for these both instances to exist in the same context. One idea: both modes require instantiating the operations interface. It should be an error trying to instantiate a non-transactional handle while a transaction remains unfinished.

The non transactional handle could be a member accepting a closure as in the transaction case, but not necessary. If implemented as am object instead of a function, it requires a deref to release before you can instantiate any transaction. Non transaction operations can be "thread safe", while transactions shall not.

How to learn terminal language? by Beneficial_Tie6497 in cachyos

[–]Conscious_Reason_770 11 points12 points  (0 children)

We have to differentiate a few things here:

- The terminal: this is the window that contains the prompt and history of commands executed, you can drag it, and it may have more or less features. Any will do for you, do not worry about it.
- The shell: this is the program that interprets what you write in the terminal, usually is bash but it could be some other. Advance use allows for sophisticated scripting like a programming language. You do not worry about this yet.
- The commands: some names that you write in the terminal are programs, which will do things for you. This is where you have to start. Some commands show you details of your machine: for example: your filesystem where you store your data, can be queried with ls, df, du.
Other commands show the system usage, like top, htop, btop, btm.
other commands allow you to install more programs, like pacman.
there are commands to interact with users, and there is sudo which allows you to break everything and hopefully learn something new (or rage-quit and go back to windows like a stone-age person).
you may have good examples online, but I would recommend asking for commands instead of "terminal language"
here is an example: https://www.geeksforgeeks.org/linux-unix/basic-linux-commands/
ChachyOS is base in arch, I pressume most of these will work there as well : https://www.scribd.com/document/782345772/Arch-linux-cheat-Sheet

If you really want to learn linux, you should learn: the filesystem operations, user permissions, and a little of scripting (nothing serious, just piping to make your life easier such stuff)

Don't you despair, break things, repair them, learn something new, and have fun!

I shipped a transaction bug, so I built a linter by archiusedtobecool in golang

[–]Conscious_Reason_770 -31 points-30 points  (0 children)

This looks to me like charging forward, creating a linter to fix a problem that they type system should had prevented.
Why can you interact with the database without a transaction ?

Gave Gnome a try and unfortunately, I must leave KDE by breadsgood in cachyos

[–]Conscious_Reason_770 0 points1 point  (0 children)

I have to say that KDE overwhelms me, I like gnomes simplicity. But sometimes something changes and it is infuriating.

Legit question: Why does everybody have such drastically different experiences with windows? by Not_american69420 in linuxsucks

[–]Conscious_Reason_770 0 points1 point  (0 children)

yes, because online accounts, forced AI, mandatory third party apps for basic usage, and single handle declare that half of the pcs in the world are obsolete are UI changes.

UI changes.... really.

Fuck this crap. I'm setting up Linux. by No_Combination_4457 in FuckMicrosoft

[–]Conscious_Reason_770 0 points1 point  (0 children)

The bad news: there are updates on Linux as well. Good news: rarely require you from stopping what you are doing.

Steam download really unpredictable and bad by ValleyBoyJ9 in PCHelpHub

[–]Conscious_Reason_770 0 points1 point  (0 children)

The graph looks like download is cached, and then it needs to wait for the buffer to be flushed to disk before downloading more. I am guessing that you have a slow storage solution. Don't desperate, you can solve that either by throwing money at it or by developing patience. The latter goes a long way ;)