I learned to code through the UK BBC Microbit initiative back in 2017 (ish). Since then I have learned alot and done various personal projects, only a few of which are listed here. They are at different stages of completion and size. Some have effective commentory while others are sparse. There is a tendency for UI development, but only because those projects can be used in daily life.
Please remember:
- I don't have a Computer Science degree, but did take some Physics/Maths programming modules at university.
- I do have a life outside of coding and can thus only code in my spare time.
- I have an understanding of coding structures upto class inheritance, pointers, etc, and an idea of basic algorithums.
- I will continue to add personal projects.
- Academic projects are not listed here.
Existing projects:
- See bottom of this(?) page.
Planned projects:
- A 'My skills' website - CVs and Cover letters are ok, but when it gets technical people need to see the skill i have and be able to search.
- ML predictor for sports race results - A basic, self updating website with time serise machine learning. I have a univeristy school of Maths introduction but need to see how it is done in production.
Canceled projects:
- Fitness tracking wesite - Customised data analysis of the data from my smart watch (Garmin). An internal philosophy change made me search for existing tools online, which has led me to finding an existing suitable solution.
Attatudes:
- I belive in well documented code, for one's own sanity a few years later and for other people: inline comments, function definition messages, summaries of intended task.
- I belive in time efficency, thus comments should only be done once the final version is well defined.
- I belive in simplicity, it is less prone to error, faster to understand, and easier to alter. Ideal simple solutions might not be imidetly obvious and thus we must value the progress made to reach them.
- I belive that there is no point repeating what other people have already done, if the tools are there, just use them; don't waist your time in replicating them unless you have a good reason.
| Language | Experience | Comment | |
|---|---|---|---|
| Python | ⭐⭐⭐⭐☆ | Proficient | Strongest language, across projects and academia. |
| C# | ⭐⭐⭐☆☆ | Intermediate | UWP and Windows Forms. |
| C++ | ⭐☆☆☆☆ | Basic | Read lots of code but limited practice. |
| HTML/CSS/JavaScript | ⭐⭐⭐☆☆ | Intermediate | Can build small websites and use Bootstrap but not full-scale production apps. |
| Scripting | ⭐⭐⭐☆☆ | Intermediate | Confident with shell scripts and some automation, but not advanced system-level scripting. |
| Framework | Experience | Comment | |
|---|---|---|---|
| Git / GitHub | ⭐⭐☆☆☆ | Basic | Used in projects and internship. Experience includes branching, commits, pull requests, and basic merging but not “advanced workflows”. |
| Linux CLI | ⭐⭐☆☆☆ | Basic | Manage files, install and build programs. |
| High performance computing | ⭐⭐☆☆☆ | Basic | Academic introduction, can execute existing code with Slurm and have done a little investigation on how to write it. |
| Scikit-learn (Python, ML) | ⭐⭐⭐⭐☆ | Proficient | Academic introduction at university |
| Keras (Python, ML) | ⭐⭐☆☆☆ | Basic | Academic introduction at university |
| Django (Python, web) | ⭐⭐⭐☆☆ | Intermediate | Built an app with DB integration, CRUD, and async fetch. |
| UWP (C#, xaml) | ⭐⭐⭐☆☆ | Intermediate | Functional apps built. |
| Windows Forms | ⭐⭐⭐☆☆ | Intermediate | Functional apps built. |
I now regularly use AI tools to accelerate my programming. AI can't do everything: it gets things wrong, fails with niche areas of information, but excels with well known informaiton (mostly).
I intend to make my own website page at some point, but in the meantime here are a few other of my achivements.
Name: CairnCoder (a pseudonym)
