diff --git a/content/posts/Away-with-local-dev-environments.md b/content/posts/Away-with-local-dev-environments.md deleted file mode 100644 index 5d825ba..0000000 --- a/content/posts/Away-with-local-dev-environments.md +++ /dev/null @@ -1,68 +0,0 @@ ---- -title: Away with local dev environments -date: 2023-11-24 -author: ahmza -draft: true -weight: -tags: -description: -canonicalURL: https://blog.ahmza.com/Page%28/posts/Away-with-local-dev-environments%29 -cover: - image: /webp/posts/away-with-local-dev-environments/feature.webp - alt: - caption: - relative: false ---- - -## **Introduction** - -Over the past few years I have been constantly iterating on my local development environment across multiple devices. This has become a headache having to manage all of these changes across all of my devices. - -## How it used to be - -I work across 4 devices: -- Work MacBook Pro -- Desktop PC -- Personal Linux Laptop -- IPad - -Each of these systems involve their own initial setup as well as installing my [dotfiles](https://gitlab.com/ahmza/dot). In an attempt to make this process easier I created a [script](https://gitlab.com/ahmza/dotinstall) that would handle the dotfiles. The problem this introduced however was one more THING to maintain. I continued like this for a while until I picked up an IPad. - -## Eureka - -When I picked up the IPad its purpose was simple: -- Streaming media -- Creative Endeavours -- Basic Note taking - -As I used the IPad more I became invested in the idea of it being able to replace a laptop. Its light and fits into my sling bag when I ride. So if it can do the tasks my laptops can then it makes the perfect travel device. - -Off the bat Emails and Slack are easy enough. Video meetings if required are easier than the laptop. It is able to hammer through image processing for my street photography and I am able to edit video off the GoPro thanks to the M2 chip and thunderbolt. - -The one fatal flaw was struggling to find a good shell interface. so the search began. I finally came across [ISH](https://ish.app/) and fell in love. However of course it has its limitations and I didn't want to install a bunch of extras on the IPad. So I needed a remote device I could SSH to. - -My initial thinking was one of the main devices listed above however that meant making sure they are up and available all the time which is not always the case. I then considered the [RPI Cluster](https://blog.ahmza.com/posts/building-a-docker-swarm-with-pis/) however I did not want to interfere and again install unnecessary packages there. Then it clicked ... THE CLOUD. - -## WIN !! - -I spun up an EC2 instance in aws. Which meets all my requirements: -- Available whenever I need it -- Powerful enough -- Native Linux - -Now all I need to do is SSH to that machine and boom I have everything I need to work on my projects. - -No more spending hours setting up a new device with all the dependencies and dotfiles. All I need to do is add the SSH key and go from there. - -Ok maybe change some terminal colours. - -## **Conclusion** - -Working like this also means I can leave stuff running in the "background". So I need to learn to use [tmux](https://github.com/tmux/tmux/wiki) - -- https://github.com/tmux/tmux/wiki -- https://www.youtube.com/watch?v=DzNmUNvnB04 -- https://www.youtube.com/watch?v=-B5VDp50daI -- https://www.youtube.com/watch?v=H70lULWJeig -- https://www.youtube.com/watch?v=qyV_hOtMdwg -- https://www.youtube.com/watch?v=ceRYL271cao \ No newline at end of file diff --git a/content/posts/be-more-productive-by-being-bored.md b/content/posts/be-more-productive-by-being-bored.md new file mode 100644 index 0000000..599e151 --- /dev/null +++ b/content/posts/be-more-productive-by-being-bored.md @@ -0,0 +1,23 @@ +--- +title: Be More Productive by Being Bored +date: 2024-01-02T23:48:23Z +author: "ahmza" +draft: true +weight: + +tags: ["Prodcutivity","Lifestyle","Minimalism"] +description: "In the modern age we are overwhelmed with stimuli. Learning to cut out the noise is the answer" +canonicalURL: "https://blog.ahmza.com/Page%28/posts/be-more-productive-by-being-bored.md%29" + +cover: + image: "" # image path/url + alt: "" # alt text + caption: "" # display caption under cover + relative: false # when using page bundles set this to true + +--- + +## **Introduction** + + +## **Conclusion** diff --git a/content/posts/welcome.md b/content/posts/welcome.md index 7d3bf47..d1c17b5 100644 --- a/content/posts/welcome.md +++ b/content/posts/welcome.md @@ -1,5 +1,4 @@ --- - title: Welcome 👋 date: 2021-12-01T13:36:08Z author: "ahmza" @@ -16,40 +15,30 @@ canonicalURL: "https://blog.ahmza.com/Page%28/posts/Setup-an-NGINX-Reverse-Proxy showtoc: false searchHidden: true - --- -### Hello World +### Hello world The mandatory hello world when you start something new. -I'd like to say thank you for visiting my site and I hope that you -gain something valuable from it. +I'd like to say thank you for visiting this site. ### A bit about me -I'm currently based in the UK in the early stages of my career. And -like most people - possibly you - I am very interested in learning -new technologies and techniques. +I'm based in the UK, and like most people -- probably you -- I'm +interested in learning new technologies and techniques. -I get bored fairly easily and so I have to keep my self busy by -learning new stuff. The reason this site exists is because I wanted -to learn how web servers work and long the way I learned a lot of -other stuff too. +I get bored, so to keep myself busy I learn new stuff. This site exists because +I wanted to learn how web servers work and along the way I learned a lot about +neighboring moving parts. -I feel If you are interested in something then definitely go ahead -and try to learn it I'm sure you will learn a lot more than you -expect. Like a lot of people say +I'm enthusiastic about learning and love when people sharing my findings. +I am slowly building my network of people whom I can share my progress with and +collaborate. -> ***Its about the Journey as much as it is the destination*** +I have always tinkered and naturally gained an interest for technology, I don't +limit myself to one part of tech I try to dabble in a bit of everything. one +hobby that has stuck with me is photography where you have to understand the +camera and its limits to adapt to different situations. -I have always tinkered and naturally gained an interest for -technology, I don't limit myself to one part of tech I try to dabble -a bit in everything. I love photography as you operate the camera and -in certain situations have to learn to develop film 😂 but I also get -to incorporate the creative side. - -Check out my photography focused site here photos.ahmza.com - -If you would like to learn more about me then feel free to contact me -on any of my social media. +You can see some of my photography on my Instagram. diff --git a/content/posts/you-need-to-learn-linux.md b/content/posts/you-need-to-learn-linux.md index d195f0c..0caa95e 100644 --- a/content/posts/you-need-to-learn-linux.md +++ b/content/posts/you-need-to-learn-linux.md @@ -1,94 +1,114 @@ --- -title: "You Need to Learn Linux \U0001F427" +title: You Need to Learn Linux 🐧 +date: 2021-12-17T19:16:50Z +author: "ahmza" +draft: false +weight: + +tags: ["Linux"] +description: "Here's why you should learn Linux" +canonicalURL: "https://blog.ahmza.com/Page%28/posts/you-need-to-learn-linux.md%29" + +cover: + image: "/webp/posts/learn-linux/feature-anim.webp" # image path/url + alt: "learn-linux" # alt text + caption: "" # display caption under cover + relative: false # when using page bundles set this to true +showtoc: true +searchHidden: false --- ## **Introduction** -You need to learn *Linux* because there is no reason not to. If you -are pursuing a career in IT, without a doubt you will come across -*Linux* and having even basic knowledge is very helpful. Many people -struggle with the OS simply because it's fundamentally different -compared to the other operating systems, but with a bit of time you -can master the basics and unlock it's true power. +**You need to learn *Linux*** !! -{{\< video label="true power" webm="/webm/mha-power.webm" >}} +Without a doubt you will come across *Linux* at some point in your IT career and +having baseline knowledge is helpful. *Linux* can seem daunting, it's +fundamentally different compared to windows. but with a bit of time you can +master the basics and unlock its true power. + +{{< video label="true power" webm="/webm/mha-power.webm" >}} ## **But Why** -**Linux is everywhere**, from data centres to your smart toaster. So -if you are interesting in anything IT related then it's a great asset -to have. +- ***Linux* is everywhere**, from data centres to your smart fridge. A lot of +developers at Google use *Linux*. In fact access to the full codebase is given +on *Linux*. -Linux is great for power users because it allows you to customise all -aspects of your workflow to make it yours. The amount of -customisability is mind blowing and an endless rabbit hole which is -awesome as there is always something you could implement to improve -your workflow. +- **Power user?** The ability to personalise all aspects of the system **make it +your** system. This can result in you chasing the white rabbit, but the feeling +of booting into a system that's yours from start to finish is something else. -Another great aspect of the customisability is the crazy number of -options you can choose from to theme and tailor the Linux desktop -experience to your liking. For some great and inspiring examples -checkout [r/unixporn](https://www.reddit.com/r/unixporn/). This -is what drove me to switch to Linux and Arch specifically. +- **Make it pretty** - You can create something that's **functional and beautiful** +[r/unixporn](https://www.reddit.com/r/unixporn/) -Linux is very Light weight (Depending on Distribution) and much -faster than competing operating systems simply because more often -than not the distributions of Linux are not filled with bloatware. -The most extreme examples of this are distros like Arch or something -like LFS (Linux From Scratch) where you get a completely bare bones -installation of Linux and are required to install everything from -Network Managers, to the Desktop Environment, although this can seem -pointless at the start as you use more and more distros you will find -things you like and don't on each and something like Arch allows you -to choose every bit of software that is installed and come up with -something completely custom. Plus then you can say `I use Arch BTW` +**Lightweight and extensible** limiting the fluff. Making *Linux* by default a +lot faster than other operating systems. + +## **Ok but what about ...** +- **Application Support** - Some popular applications you use may not be +available e.g Microsoft Office and the Adobe suite. All is not lost though, +there are alternatives if you can spend the time learning new software. + +- **Drivers** - More often than not *Linux* just works. Edge cases could rise +that you might struggle with, don't give up Google it and dig in !! ## **How can you start** +> please note the steps below will require further reading to set up + ### **Install Linux as your main OS** -This is the full send option. +**This is the full send option.** It may take you a while to acclimate but I feel +this is the fastest option to success as you force yourself into learning. +*Linux* Distributions I have enjoyed using: -A great Distribution that I recommend is [Manjaro with KDE Plasma](https://manjaro.org/downloads/official/kde/) -as it offers a heavily customisable desktop environment `KDE Plasma` -and Manjaro itself is a great as it's Arch based but does not require -you to start from step 0. +- [Ubuntu](https://ubuntu.com/download/desktop) - Beginner friendly +- [Manjaro](https://manjaro.org) - OS Basics set up, provides more flexibility +- [Arch Linux](https://wiki.archlinux.org/title/installation_guide) - Jump in the deep end, go from start to finish and learn all about *Linux's* moving parts -### ***MacOS*** **Terminal** +### ***MacOS* Terminal** -*MacOS* is actually *UNIX* based and so **if you have an *apple -Mac/MacBook* all you need is the Terminal** application. I used this on -my work machine and it's a great alternative to the full send option. -However I do not recommended this if you don't own one of these devices -already due to cost 💸 +**If you do not own a *MacBook* skip this due to cost 💸** +*MacOS* is *UNIX* based, **if you own a *MacBook* download a Terminal Emulator** +-- [iterm2](https://iterm2.com/) or [kitty](https://sw.kovidgoyal.net/kitty/binary/) +both great options -- install [Homebrew](https://brew.sh/) and get going. ### ***Windows WSL*** -The *Windows Subsystem for Linux* is another great option to get started -with *Linux*, it installs the *Linux Kernel* in windows and allows you -to play around in a real *Linux* environment. +*WSL* installs the *Linux Kernel* and allows you to use the *Linux* terminal +within *Windows*. This does have its limitations but a low bar to entry. -### **Virtual Machines** +### **Virtual machines** -If there is a specific Distribution of *Linux* you want to try then -this is a great option. However if you want to simply get to know -*Linux* then choose the *MacOS* terminal or *WSL* methods as they are -a lot lighter on system resources +Virtualising *Linux* is another great option. VMs are quick to spin up and remove +providing the ability to try out a handful of distributions with ease. This does +come with the condition of having a device that can handle virtual machines +meaning: +- A CPU capable of virtualization +- enough free RAM for the VMs + +### **Buy a secondary device** + +Have another cheap laptop or desktop to run *Linux*. This will cost you a bit +more than the options above. If you're considering a second device then look +at the Thinkpad lineup. These laptops are rugged and highly upgradeable. +Two Thinkpad Models I own: +- T440P +- T480 *(Non S model)* ## Conclusion **Why are you still reading go and get stuck in with *Linux* 💨** -{{\< video label="do it" webm="/webm/do-it.webm" >}} +{{< video label="do it" webm="/webm/do-it.webm" >}} -As with anything learning *Linux* is a journey and will take time. -Enjoy the experience of learning it and uncovering it's hidden powers -because it is well worth it. I have linked some great resources for -other great Linux related content that helped me. +**Learning *Linux* is a journey that will take time. Enjoy the experience of +learning and uncovering it's hidden powers.** -[DT youtube Channel](https://www.youtube.com/channel/UCVls1GmFKf6WlTraIb_IaJg) - -[r/unixporn](https://www.reddit.com/r/unixporn/) - -[Arch Wiki](https://wiki.archlinux.org/) (Although specific to Arch -this is a great knowledge base, also useful for Manjaro as it's Arch based) +I have linked some great resources for other great *Linux* related content that +helped me: +- [DT YouTube Channel](https://www.youtube.com/channel/UCVls1GmFKf6WlTraIb_IaJg) - +Covers *Linux* related topics +- [r/unixporn](https://www.reddit.com/r/unixporn/) - Get inspired and make *Linux* pretty +- [Arch Wiki](https://wiki.archlinux.org/) - Although specific to Arch, it's a great knowledge base