diff options
| author | Kumar Damani <me@kumardamani.net> | 2022-09-12 22:56:16 +0000 |
|---|---|---|
| committer | Kumar Damani <me@kumardamani.net> | 2022-09-12 22:56:16 +0000 |
| commit | e629cc77768ad029445648540a0dd4129ce869a7 (patch) | |
| tree | 3d837f3df3962c8b626b7359558933a9d4c379fc /content | |
| parent | 89ea076e19c28ebb27b0bd7096b7bb3c319f9563 (diff) | |
moved to hugo
Diffstat (limited to 'content')
| -rw-r--r-- | content/_index.md | 164 | ||||
| -rw-r--r-- | content/post/_index.md | 6 | ||||
| -rw-r--r-- | content/post/programs/index.md | 86 | ||||
| -rw-r--r-- | content/post/self-host/6imv05.jpg | bin | 0 -> 66020 bytes | |||
| -rw-r--r-- | content/post/self-host/elections.jpg | bin | 0 -> 97041 bytes | |||
| -rw-r--r-- | content/post/self-host/freedom.jpg | bin | 0 -> 300014 bytes | |||
| -rw-r--r-- | content/post/self-host/index.md | 125 | ||||
| -rw-r--r-- | content/post/self-host/office.png | bin | 0 -> 1443597 bytes | |||
| -rw-r--r-- | content/post/self-host/police.jpg | bin | 0 -> 190074 bytes | |||
| -rw-r--r-- | content/post/self-host/why.jpg | bin | 0 -> 110502 bytes |
10 files changed, 381 insertions, 0 deletions
diff --git a/content/_index.md b/content/_index.md new file mode 100644 index 0000000..df4987e --- /dev/null +++ b/content/_index.md @@ -0,0 +1,164 @@ +# About me +Hi. This is me: +{{< figure src="/kd.jpeg" alt="my pic" width="100" >}} + +My name is Kumar. Some people call me *kd*, I'm known for being... + +* that guy who hosts his own website, email, dropbox, vpn, etc. [Read more](post/self-host). +* a stickler about 'oPtiMiZing mY woRkfLoW' by scripting anything script-able. +* a programming purist, and linguistic enthusiast. +* 👎 down on social-media. I think they lead to dystopia. [Read more](post/self-host#privacy). +* a B.Sc in Computer Science at the University of Toronto with a focus in Natural Language Processing + +## Projects + +### My Homelab setup +* My Ansible repository used for managing my self-hosted services. +* [Source on GitLab](https://gitlab.com/kdam0/vps) +* Using: Ansible + +### Namecheap CLI +* A containerized CLI to list/add/update/remove DNS records from Namecheap. +* [Source on GitLab](https://gitlab.com/kdam0/nccli) +* Using: Go + +### My dotfiles + +* My settings for common Linux desktop tooling. +* [Source on GitLab](https://gitlab.com/kdam0/dotfiles) + +### Helpthehome(less) + +* <a target="_blank" href="https://helpthehome-prod.herokuapp.com/">Project info page</a> +* [Project home](https://helpthehome-prod.herokuapp.com/) +* [Source on GitLab](https://gitlab.com/kdam0/helpthehomeless) +* Using: NodeJs, React-Native, MongoDB, Pug (jade) + +### Solutions Repo + +* [Project home](https://solutionsrepo-prod.herokuapp.com/) +* [Source on GitLab](https://gitlab.com/kdam0/solutions_repo) +* Using: NodeJs, MongoDB, Handlebars + +> If you've found something above useful, consider [sending](#donate) some coins my way! + +## Professional Life +Treat this section as an extension of my resume. + +<details> +<summary> 2020 - now </summary> +<br> +Currently working as a **DevOps** at [Kepler](https://kepler.space) 🛰️. +This is mostly a software (infrastructure) dev gig for a start-up, which is a bit new for me +coming from a more classical "DevOps" role for a mature company. There is a ton of specialized *space* +related equipment here that presents interesting problems. +<br><br> +Beyond that, I've learned a ton about +embedded computers, networking and network automation, which has opened my world up to +cool home projects for which I am very grateful for. So far, I've been responsible for the +following: + +* Implementing a net-boot infrastructure using Packer, PXE, Awx (Ansible Tower) to keep our +RPi fleet images and configurations in-sync and up-to-date. +* Built a custom Linux router to support our lab's unique hardware testing requirements +for on-demand subnet generation/teardown, and develop Ansible roles switches. +* Completely revised our test-automation infrastructure by building a hardware-management +portal using Django with a RESTful Api (DRF) to facilitate reservation, +as well as [HITL](https://en.wikipedia.org/wiki/Hardware-in-the-loop_simulation) +(Hardware-in-the-loop) testing to allow us to more reliably, and frequently test our HW. +* Designed and deployed our on-prem Kubernetes cluster to be our software +platform going forward, while facilitating the migration to Kubernetes for all pre-existing +workloads, including (but not limited to) our various distributed databases. + +Beyond my work as an Individual Contributor, I've also been responsible for instilling "DevOps" +principles within the team on our road to maturity. +</details> + +<details> +<summary> 2019 - 2020 </summary> +<br> +Worked as a **DevOps Engineer** at [AcuityAds](https://acuityads.com) in Toronto. +The main selling point for me to work here is that Acuity does not use +AWS, GCP or Azure etc. to host its infrastructure, it has its own on-prem 'cloud'. +This presents substantial challenges for us as DevOps Engineers that would normally be handled by a +the public cloud provider. +<br><br> +Apart from this, due to the nature of adtech, we deal with a massive amount of data, which forces +us to be very specific about the types of technologies we use. Here is a subset of what we use +across multiple data-centers, with high-availability: + +* Infrastructure: VMWare, Physical +* Provisioning: Ansible, Terraform, Cobbler +* Containerization: Docker, Kubernetes +* CI/CD: Git, BitBucket, Bamboo (we host the entire Atlassian suite in-house) +* Monitoring: + * TICK (Telegraf, Influxdb, Chronograf, Kapacitor) + * ELK (Elasticsearch, Logstash, Kibana), with filebeat and metricbeat beats + * Prometheus + * Grafana + * Nagios, Pagerduty, Pingdom +* Data: MySql, Aerospike, Kafka, HDFS, Druid +* Scripting: Golang, Bash, Python. <em>Some</em> of my work can be on my Gitlab profile: + * Golang: + * a fast, containerized [cron script](https://gitlab.com/kdam0/go-druid-mysql-influx) + that interacts with Druid, MySql, and Influxdb written in Go. + Basic unit testing. + This is a job that powers one of our major alerting dashboards. + * a containerized highly modular [Rest Api](https://gitlab.com/kdam0/devops-api) + that writes to Influxdb. + This is something we run in K8S as a Service to monitor Cronjobs that run in K8S. + * Python: a [script](https://gitlab.com/kdam0/slack-to-teams) to migrate + Slack exports to MS Teams messages. + This is something we used when we gave up on Slack. + * Bash: a small [collection](https://gitlab.com/kdam0/random-shell-helpers) of helper + scripts that I used frequently for random things. +</details> + +<details> +<summary> 2016 - 2017 </summary> +<br> +I worked at [Achiga](https://achiga.io) (formerly *WebCanada*) as +part of my [PEY](https://web.cs.toronto.edu/undergraduate/pey) (internship) +program from UofT for 12 months. As part of this, I was involved in: + +* A fast paced Agile environment where I was a Full Stack Developer working with + **PHP (Zend), MySql, and JavaScript**. +* Git + BitBucket + JIRA (basically the whole Atlassian suite), with Vagrant +* The Pipeline team working on day to day features and bugs in the CMS powering thousands of + local hotel sites around the world for Starwood Hotels. +* Debugging and optimizing cronjobs responsible for storing hotel rates in + our database which is critical to hotel revenue. +* Contributing to the Gallery Page (CMS as well as user facing UI). + See [Design Hotels Gallery Page](https://designhotels.com/gallery) + towards the end of my tenure. +</details> + +<details> +<summary> 2014 - 2016 </summary> +<br> +I've worked on several other small-buisness type projects involving web, and scripting over the +years in between semesters. +</details> + +## Donate +<details> +<summary> Monero (XMR) </summary> +<br> + +``` +42hFshxmNoFZfAkDJTjSx9MUruMHdLTiDTE4efpP7xZTYwHMjwDZ6eJea2EnyBGGr5ab81cAovBxxT6KSvpUY5roUdkP1Qj +``` + +{{< figure src="/xmr.png" alt="xmr wallet qr code" width="100" >}} +</details> + +<details> +<summary> Bitcoin (BTC) </summary> +<br> + +``` +bc1q4em7f7mvl6wkzc8uyq4365td7w5n02uh64z2za +``` + +{{< figure src="/btc.png" alt="btc wallet qr code" width="100" >}} +</details> diff --git a/content/post/_index.md b/content/post/_index.md new file mode 100644 index 0000000..8a084d9 --- /dev/null +++ b/content/post/_index.md @@ -0,0 +1,6 @@ ++++ +aliases = ["posts", "articles", "blog", "showcase", "docs"] +title = "Posts" +author = "Hugo Authors" +tags = ["index"] ++++ diff --git a/content/post/programs/index.md b/content/post/programs/index.md new file mode 100644 index 0000000..6766253 --- /dev/null +++ b/content/post/programs/index.md @@ -0,0 +1,86 @@ ++++ +author = "Kumar Damani" +title = "Programs and Equipment" +date = "2021-11-12" +description = "Overview for the programs and equipment I use day-to-day." +tags = [ + "personal", + "tech", +] ++++ + +The programs and equipment I use on a daily basis. +<!--more--> + +# Programs and Equipment I Use +I'm about getting things done quickly and having as little space between +my thoughts and actions on the computer. + +I like having vim-like bindings and prefer running programs in the terminal for simplicity's sake. +That said, I'm very much against the cringe meme that things in the terminal are "cooler" or "nerdier" XD. +Terminals are good for most tasks, but useless for others, for example, browsing the web +(I admit this unfortunate fact with much consternation) or looking at maps. + +## Software I Use + +### OS Distribution +[Manjaro](https://manjaro.org/) (stable) though this is a bit of a moot point since there's been a lot of convergence among the +popular distros recently especially since they all offer some dedicated channel for getting up-to-date +software. The real day-to-day difference to workflow comes from the choice of desktop environment. +I do like Debian, and Fedora as well. + +### Desktop Environment +I've settled on [KDE Plasma](https://kde.org/plasma-desktop/) w/ Wayland after many years of hopping. +Plasma comes with all the tools you'd expect to see in a modern desktop, +and for the most part these tools are perfectly capable of doing the task they are meant to do. +Prior to KDE, I've used Dwm/Bsmpw + Sxhkd, i3 etc. I'm glad these exist and people get +use out of it, but for now I do not miss it - I'm sure that will eventually change too. + + + +### Text Editor +[(neo)vim](https://neovim.io/). Less of a text editor and more of a lifestyle. Check out my dotfiles for this. +No, I'm not going to ever switch to emacs. + + + +### Web Browser +[Firefox](https://www.mozilla.org/en-US/firefox/features/) / +[Brave](https://brave.com) / +[Vivaldi](https://vivaldi.com). +I have tried, Chromium, Qutebrowser in the past. + +### File Manager +[nnn](https://github.com/jarun/nnn). Yes, I have used ranger. + + + +## Where can I find good software options? +The program of your dreams is probably listed below: +* The [suckless](https://suckless.org/rocks/) website's list of programs that "rock". +Generally minimalist programs. +* A more comprehensive [list](https://github.com/mayfrost/guides/blob/master/ALTERNATIVES.md) +of minimalist software. +* [FSF's Free Software Directory](https://directory.fsf.org/wiki/Main_Page). + Emphasis on libre software (although most software in the links above will have free licenses as well). +* [Gentoo Wiki Recommendations](https://wiki.installgentoo.com/index.php/List_of_recommended_GNU/Linux_software) + A good mix of programs for novices and advanced users. + +## Hardware I Use + +### Laptop + +The main laptop I use is the [Framework laptop](https://frame.work/). +I'm a huge fan of the whole upgradability concept coming from a few generations of ThinkPads. + + +## What I don't use +Proprietary software. + +I'm not going to endorse proprietary services that have gone out of their way to spy on or politically +suppress their users, just as Facebook, Discord etc. +One of the many take-aways you should get from me is that the use of libre/free software, +by its nature, is more constructive and extensible; and **that's the point**. + +There are philosophical reasons for this I'll talk about in time, but for now, +suffice it to say I will not endorse the usage of proprietary software. diff --git a/content/post/self-host/6imv05.jpg b/content/post/self-host/6imv05.jpg Binary files differnew file mode 100644 index 0000000..d042d7a --- /dev/null +++ b/content/post/self-host/6imv05.jpg diff --git a/content/post/self-host/elections.jpg b/content/post/self-host/elections.jpg Binary files differnew file mode 100644 index 0000000..ac4ac96 --- /dev/null +++ b/content/post/self-host/elections.jpg diff --git a/content/post/self-host/freedom.jpg b/content/post/self-host/freedom.jpg Binary files differnew file mode 100644 index 0000000..d62048a --- /dev/null +++ b/content/post/self-host/freedom.jpg diff --git a/content/post/self-host/index.md b/content/post/self-host/index.md new file mode 100644 index 0000000..6d13fc2 --- /dev/null +++ b/content/post/self-host/index.md @@ -0,0 +1,125 @@ ++++ +author = "Kumar Damani" +title = "Why do I self-host?" +date = "2022-09-12" +description = "Overview of why I self-host." +tags = [ + "personal", + "tech", +] ++++ + +My reasons for self-hosting. +<!--more--> + +## Digital freedom/independence + + + +To put it simply, if you use a service such as Lastpass, iCloud, Dropbox, GDrive, OneDrive, etc. +to store your data, **you do not own it**. + +You are *trusting* corp. X to store it, secure it, and make it available to you. +Beyond the obvious privacy pitfalls with this, there are many other things that +could go wrong with your data being stored this way: + +* Corp. X could vanish/close/"declare bankruptcy" (as with many crypto corps. lately), and you lose your data. +* Corp. X could make a policy change and lock you out from accessing your account. +* Or you could "forget" to pay the bills a few times and get locked out. +* Corp. X could get hacked, and your data gets stolen. This is the latest trend! +* Many other doomsday 💀 scenarios. + +Personally, I don't feel comfortable depending on the existence of corp. X *for data that is important to + me* i.e. a lifetime's worth of documents, memories, and passwords etc. +I 💤 much better at night knowing I am avoiding most if not all of the risks above. + + +## Privacy +Normies often ask me some variation of: +* Why do I care if corp. X has my data? I have nothing to hide! +* Since I'm aware of targeted advertising, it won't work on me, + so why should I care if corp. X has my data? + +{{< figure src="why.jpg" alt="my pic" width="75%" >}} + +To such questions, I follow-up with: +> **Do you want to contribute to a dystopian ([Orwellian](https://en.wikipedia.org/wiki/Orwellian) future?** + +{{< figure src="police.jpg" alt="thought police" width="75%" >}} + +If your answer is *yes*, then no need to read further, the following will not change your mind. + +If your answer is *no*, but you aren't convinced that/how these are related, +then the *argument goes something like this...* +* We live in a world of mass data-collection/surveillance. +* This enables corp. X to use techniques such as ML (Machine Learning) to build/train models (or "AI" - + Artificial Intelligence)that aim to predict human behaviour. +* That by itself is not a problem here. +* The problems arise when corp. X use these techniques for profit without + regard for the harm they cause at a *population level*. + +I have unfortunately lived through enough of these cases to be able to cite a few recent examples: +* Instagram (etc.) designs its apps/products optimizing for maximum <cite> addiction[^1]</cite>. + Think slot-machines. + You might think you are "too smart" to fall for these tricks, and you might be right, + but what about the millions of adolescents using these platforms who aren't as wise as you? + The data collected, and techniques developed from *your usage* enables platforms + to target not only you, but *all* users on the platform, including the most vulnerable. + + Unfortunately, many of these kids will end up suffering from mental-health, + body-image, self-esteem <cite>issues[^2]</cite>, + and for some it **will be fatal**. + I do not think this is morally acceptable, and is primary reason I refuse + to participate in social-media platforms. + +  + [^1]: [Smartphones and dompanime](https://sitn.hms.harvard.edu/flash/2018/dopamine-smartphones-battle-time/) + [^2]: [Mental health and social media](https://onlinedegrees.unr.edu/online-master-of-public-health/impact-of-social-media-on-youth-mental-health/) + +You could say "well that's due to bad parenting", but the point remains that +more and more of the digital world is having <em>real world</em> negative consequences regardless of +your individual participation level. Another example: + +* By now its well known that Facebook's (etc.) targeted advertising + played a significant a role in the 2016 US <cite>Elections[^3]</cite>. + Facebook was able to do this thanks to its users voluntarily giving personal information for two decades. + However, the policies that come out of this election has real world consequences to millions + (if not billions) of people, regardless of their *individual* Facebook usage, which + undermines the very purpose of a democratic republic. + Regardless of your political affiliation, it should worry you that this *can* happen. + +  + [^3]: [Excerpt from Facebook ex-exec](https://www.theverge.com/2017/12/11/16761016/former-facebook-exec-ripping-apart-society) + +To summarize, it might not be a problem if individuals disregard their +privacy at the individual level, but in aggregate, a <em>population-wide</em> disregard +has dystopian consequences. + +So the question you have to ask yourself is: +> **What can I do?** + +Start by **valuing your privacy**. +Then, follow some of these tips to *say no...* +* **Limit your exposure to these services.** If a friend stops talking to you because + of this, then congratulations, you've just gotten rid of a fake friend. You're welcome. +* [Self-host](https://wiki.r-selfhosted.com/getting-started/what-is-self-hosting/) + as much as you can. + You can see how I [implement](https://gitlab.com/kdam0/vps) this and replicate it yourself, + though it is a bit involved for normies. +* If neither of the above work for you, then you'll need to do some research to + find an alternative source that you can trust isn't doing the same thing. + Use [this](https://github.com/awesome-selfhosted/awesome-selfhosted) + as a starting point and try to search (Ctrl+f) for your service. For eg. Twitter, and + Instagram both have popular options available. +* **Stop using Chrome.** If you must use it, use [Brave](https://brave.com/) instead. + I advocate for [Firefox](https://www.mozilla.org/en-US/firefox/new/?redirect_source=firefox-com). + Neither are perfect, but both offer privacy respecting options in their settings. + Specifically disabling cross-site tracking is important. + Beyond that, install an ad-blocker extension such as [UBlock Origin](https://ublockorigin.com/) + on both of them. Don't forget to do the same on your mobile device! +* Things get more complicated on cell-phones. + I suggest switching to a privacy respecting operating-system such as [GrapheneOS](https://grapheneos.org/) + Short of this, you can only limit your usage. +* Support government policies that respect user-privacy. + +{{< figure src="office.png" alt="office pic" width="75%" >}} diff --git a/content/post/self-host/office.png b/content/post/self-host/office.png Binary files differnew file mode 100644 index 0000000..9cff3ce --- /dev/null +++ b/content/post/self-host/office.png diff --git a/content/post/self-host/police.jpg b/content/post/self-host/police.jpg Binary files differnew file mode 100644 index 0000000..dde2b44 --- /dev/null +++ b/content/post/self-host/police.jpg diff --git a/content/post/self-host/why.jpg b/content/post/self-host/why.jpg Binary files differnew file mode 100644 index 0000000..eda5402 --- /dev/null +++ b/content/post/self-host/why.jpg |
