# Development
I was a developer before anything else. I stopped in 2017. And in 2025, decided to go back to it. This is the documentation of everything I am relearning as well as going to be attempting.
This is a world of insanity I never thought I would find myself in again. But here we are. However there will be some method to this madness.
There are many things to learn when it comes to this topic. Especially having been out of the game since 2016. It will take some time to get back into it, especially since I intend to do it without AI. Good things take time. Nothing worth doing is easy.
## Current Task and Goals
- [ ] Learn [[Python]] as much as humanly possible in as many areas as possible; automation, scripting, data processing and clean up, some machine learning as well as web services and app development. (Via [[https://www.geeksforgeeks.org/python-programming-language-tutorial/ | GeeksForGeeks - Python]])
- [ ] Learn Data Structures and Algorithms (Via [[https://www.geeksforgeeks.org/dsa-tutorial-learn-data-structures-and-algorithms/ | GeeksForGeeks - DSA]])
- [ ] Learn Machine Learning [[https://www.geeksforgeeks.org/machine-learning/ | GeeksForGeeks - Machine Learning]])
## Languages
### [[Python]]
Python as I see it, is one of the most versatile languages we have. Learning this gives access to so many things that we can do. From general scripting, to automation, to data processing and machine learning. Sure, it isn't the most performant.
I don't need it to be high performance. I just need it to be more performant then myself. The current idea is to learn as much as possible to create high performance Python applications, whether be understanding algorithms well enough to know what to use and when, to using additional packages such as NumPy and SciPy written in C for the purpose of performance. And if all of that fails to make it faster, I will write libraries myself for the portions that require higher performance via Zig just as NumPy/SciPy was created for it's purposes.
### [[Zig]]
Gotta' go fast. Don't exactly want to get into C. But didn't exactly enjoy the look and feel of Rust in the tutorials either. I tried many times, but something drew me back to Zig. I don't know what it actually is, but something keeps pulling me back to Zig, just by sheer look and feel of working with it, syntax, not even anything programmatic or how it functions; I don't know enough about that portion yet. So here we are.
### HTML5, CCS3 & Javascript
This is an interesting one. Considering I'm here using Obsidian Publish as my website, which makes everything as simple as possible and pretty much primarily text and images. Nothing fancy. Just pure information for consumption. This should only be necessary if I want to do something specific with this particular website, but it will be HTML and CSS for the most part to make it look as aesthetically pleasing as possible.
## Tools
- [[VSCodium]]
- [[Alacritty]] (Ghostty once I've switched over to a Linux operating system.)
- [[Scoop]] (Windows)
- [[Neovim]] (Eventually)
- [[Blender]] (For both 3D art as well as assets for games.)
### Libraries
- [[Raylib]] - High performance featured filled graphics library built in C with many language bindings.
### Tasks (Needs to be Redone)
- [x] Research Programming Languages
- [x] Research Development Types & Environments
- [x] Compare Results and Choose Direction
- [x] Research Code Editors
- [x] Zero Telemetry
- [x] Zero AI
- [x] ...it's Neovim, isn't it?
- [x] Current Contenders
- [x] VSCodium (Telemetry Research Dependent)
- The current: but I'd like to use something more visually pleasing to use as well as something that is clean to use as well, without me constantly worrying if some form of telemetry has been somehow reactivated or looked over.
- [x] Sublime Text 4
- Love the clean look, GPU rendering and apparently the performance is decent enough. Will be looking at it more thoroughly.
- [x] Neovim
- Best in class performance. Best in class extendibility. Best in class efficiency and workflow speed. Full customisable via Lua.
- [x] Research Operating System Environments
- [x] Might just have to learn to build for all if I want to build useful applications and tools for everyone to be able to use.
- [x] I could always just choose a single operating system that I enjoy using and build for that only; Linux
- Current contenders are Arch Linux and Manjaro.
- [ ] Research Web Development
- [ ] Fastest way to create useful things will be to make it a webapp. But is that worth it? Or will creating desktop specific applications be better so that it can be used offline as well?
- [ ] Perhaps only for API usage to enhance any application I build and or provide useful information based on user opt-in (yes, opt-in and not opt-out because choice is a basic fucking human right, all you sneaky mother fuckers can go fuck yourselves with your forced arbitration and taking advantage of uninformed users).
- [x] Begin Using IDE of Choice (Probably Sublime vs Neovim)
- [x] Get good.
- [x] Get fast.
- [x] Get efficient.
- [ ] Learn Lua
- [ ] Learn Zig
- [x] Begin Building Something Simple But Useful
- [ ] To Be Announced
- [ ] Release. Iterate. Release.
- [x] Begin Building Something More Complex But Still Useful
- [ ] To Be Announced
- [x] Purpose
- [ ] Roadmap
- [ ] MVP
- [ ] 1.0