Or The Odin Project if you don’t want to cover Python in the curriculum and just stick to JavaScript.
https://www.theodinproject.com/
(The Odin Project also has an option for Ruby along with JavaScript)
Data Science
Or The Odin Project if you don’t want to cover Python in the curriculum and just stick to JavaScript.
https://www.theodinproject.com/
(The Odin Project also has an option for Ruby along with JavaScript)
A git commit is a snapshot. The node-based tree structure is an artifact of recording pointers to other snapshots and labeling snapshots with a branch name.
Seems like you should make something less focused on games and solve problems in a different domain.
I think they’re using it strictly in Tiling mode and are using directional switching. I generally work with only one window visible so I’m not sure how much I’m going to like COSMIC where that workflow seems not to be the primary focus. But it is only in alpha and I’m not actually going to give it a real try until it becomes the default in Pop!_OS. I Hope it’s not too big an adjustment for me.
What have you made using Python so far?
I was just guessing based on the SwapWindow name. That you copied definition doesn’t help me understand what it’s supposed to do.
I’m surprised that [Super] + [Tab]
and [Alt] + [Tab]
aren’t exactly what you’re looking for because System(WindowSwitcher)
seems like the name of something that would do exactly what you’re after.
I haven’t installed COSMIC, so I can’t test it all out myself right now. But it feels like something that should exist as you described.
I wonder if this is because hardware is so cheap now that a central source of reviews isn’t all that valuable anymore. Also it seems like YouTube has taken over to capture the value that’s left.
I find that books and resources on basics are hard to find motivation to get through. I don’t have a problem researching for an hour or two when I’m stuck on something that I want to accomplish, but that same information would be impossible for me to focus on if there’s no immediate motive to read it. Knowing that some information might generally come in handy later is often not enough for me to stick with it. So I don’t think people really mind helping people with “basic” questions, but their availability can unreliable.
That said, there are a lot of good suggestions in both threads you started and if you can stick with any of them it will probably be a big boost for your comfort level in using Linux.
I heard all the praise about man command and you never know if you’re working offline.
Now you can open man pages in your favorite text editor with all the associated navigational conveniences!
I’ll check out nala, could be a good learning tool, thanks!
A lot of people who try nala never switch back to apt, I hope you find it more pleasant to use.
Enjoy your Friday
Nice article.
why bother? Why I self host
Most of this article is not purely about that question, but I dislike clickbait, so I’ll actually answer the question from the title: Two reasons.
First of all, I like to be independent - or at least, as much as I can. Same reason we have backup power, why I know how to bake bread, preserve food, and generally LARP as a grandmother desperate to feed her 12 grandchildren until they are no longer capable of self propelled movement. It makes me reasonably independent of whatever evil scheme your local $MEGA_CORP is up to these days (hint: it’s probably a subscription).
It’s basically the Linux and Firefox argument - competition is good, and freedom is too.
If that’s too abstract for you, and what this article is really about, is the fact that it teaches you a lot and that is a truth I hold to be self-evident: Learning things is good & useful.
Turns out, forcing yourself to either do something you don’t do every day, or to get better at something you do occasionally, or to simply learn something that sounds fun makes you better at it. Wild concept, I know.
Contents
Introduction
My Services
Why I self host
Reasoning about complex systems
Things that broke in the last 6 months
Things I learned (or recalled) in the last 6 months
- You can self host VS Code
- UPS batteries die silently and quicker than you think
- Redundant DNS is good DNS
- Raspberry PIs run ARN, Proxmox does not
- zfs + Proxmox eat memmory and will OOM kill your VMS
- The mystery of random crashes (Is it hardware? It’s always hardware.)
- SNMP(v3) is still cool
- Don’t trust your VPS vendor
- Gotta go fast
- CIFS is still not fast
- Blob storage, blob fish, and file systems: It’s all “meh”
- CrowdSec
Conclusion
It can be exhausting to know just enough to see results that aren’t quite what you’re after, but not quite know enough to refine it to get what you want. And you’re supper close to it. Here’s some things to fill the gap (and correct a misunderstanding or two):
gives me a list of over 2000 rows inside of the terminal that i cant apparently search or sort
The dpkg -l
command can be postfixed with a search pattern:
dpkg -l lib*
will return all packages with names that start with lib
||/ Name Version Architecture Description
+++-====================================-=================================-============-===============================>
ii libaa1:amd64 1.4p5-46 amd64 ASCII art library
un libabiword-3.0 <none> <none> (no description available)
ii libaccountsservice0:amd64 0.6.55-0ubuntu12~20.04.7 amd64 query and manipulate user accou>
ii libacl1:amd64 2.2.53-6 amd64 access control list - shared li>
ii libaio1:amd64 0.3.112-5 amd64 Linux kernel AIO access library>
ii libalgorithm-diff-perl 1.19.03-2 all module to find differences betw>
ii libalgorithm-diff-xs-perl 0.04-6 amd64 module to find differences betw>
ii libalgorithm-merge-perl 0.08-3 all Perl module for three-way merge>
ii libamd2:amd64 1:5.7.1+dfsg-2 amd64 approximate minimum degree orde>
ii libamtk-5-0:amd64 5.0.2-1build1 amd64 Actions, Menus and Toolbars Kit>
ii libamtk-5-common 5.0.2-1build1 all Actions, Menus and Toolbars Kit>
un libansicolor-perl <none> <none> (no description available)
ii libapparmor1:amd64 2.13.3-7ubuntu5.3 amd64 changehat AppArmor library
ii libappindicator3-1 12.10.1+20.04.20200408.1-0ubuntu1 amd64 Application Indicators
ii libappstream4:amd64 0.12.10-2 amd64 Library to access AppStream ser>
un libapt-inst1.5 <none> <none> (no description available)
un libapt-pkg <none> <none> (no description available)
un libapt-pkg5.0 <none> <none> (no description available)
ii libapt-pkg6.0:amd64 2.0.10 amd64 package management runtime libr>
un libarchive-tar-perl <none> <none> (no description available)
un libarchive1 <none> <none> (no description available)
ii libarchive13:amd64 3.4.0-2ubuntu1.2 amd64 Multi-format archive and compre>
un libarcus3 <none> <none> (no description available)
ii libargon2-1:amd64 0~20171227-0.2 amd64 memory-hard hashing function - >
dpkg -l ?lib*
will return all packages with names that have lib
in the second third and fourth character positions.
||/ Name Version Architecture Description
+++-========================-========================-============-====================================================
ii glib-networking:amd64 2.64.2-1ubuntu0.1 amd64 network-related giomodules for GLib
ii glib-networking-common 2.64.2-1ubuntu0.1 all network-related giomodules for GLib - data files
ii glib-networking-services 2.64.2-1ubuntu0.1 amd64 network-related giomodules for GLib - D-Bus services
un glib-networking-tests <none> <none> (no description available)
un glibc-doc <none> <none> (no description available)
ii klibc-utils 2.0.7-1ubuntu5.1 amd64 small utilities built with klibc for early boot
un zlib1 <none> <none> (no description available)
ii zlib1g:amd64 1:1.2.11.dfsg-2ubuntu1.5 amd64 compression library - runtime
Then I tried to be smart and do man dpkg -l to see if that has any options on how to use it better, and instead i got another huge text file that i cant search or navigate through properly
Yeah, man pages are overwhelming at times. There are ways to navigate them in the terminal, but I would have to look that up because I pretty much never do that. It’s easier for me to just look it up online or open the text in an editor. Looks like you had the same idea with trying man dpkg -l | nano
and man dpkg -l | vscode
and you were so close to the end goal of reading the man page in a text editor!
Here are two ways you can make it work:
For both methods you will need to drop the -l
so just use man dpkg
.
Use the operator to redirect the output of
man dpkg
to a file:
man dpkg > dpkg.man
(note that the file name after the operator above can be anything you want the name of the file to be. I chose
dpkg.man
because it seemed like it would be easy to remember for me.)
Then open the file using nano or vscode:
nano dpkg.man
code dpkg.man
(note the name of the package for vscode is code
)
Use the |
operator to send the output of man dpkg
to a nano filebuffer:
man dpkg | nano
Then open file that was saved when nano returned an error message. In your case:
nano nano.12608.save
code nano.12608.save
(This second method feels a bit janky but it works.)
Since you were talking about using apt-get
and apt
to manage packages, I’ll suggest nala as a more beginner friendly alternative that is more verbose and explicit about what it is doing. Give nala a try.
I hope this helps and that you can return to learning how to get things done using Linux with renewed resolve now that you’ve had some time away from it.
Keep asking questions! You’re probably learning more than you realize already.
He made up hypothetical scenarios that nobody asked about, and then denigrated Rust by attacking the scenarios he came up with.
This seems to be the textbook description of a strawman argument.
dpkg -l
will list all .deb packages installed on your system.
I’d say that someone like you is more interested in using the command line to manage your package installations, so you can safely ignore the popshop as a convenience for others who are less interested in the details of their system
https://www.baeldung.com/linux/ Also has very well written articles on specific topics and tutorials.
Follow up with what is sometimes called the Unix Bible: https://www.oreilly.com/library/view/unix-and-linux/9780134278308/
Why is there often no discussion or mention of Pixi along with uv in conversations about Python tooling? Is it because uv has a lot of VC money to get attention while Pixi doesn’t?