Welcome to Luis' blog


All posts

Hey, its me

again

I wanted to record this here to show that I truly did lock off, I need to shift focus onto mathematics and this currently isn't feeling like a great use of my time considering my level of competence right now in terms of the test. Therefore I need to make the responsible decision to shut this down until exams are fully over. I will not stop coding between then and now but this was actually a lot of fun for me however I feel as though the materials I have covered so far don't justify this website and my passion even slightly. I can do much better and currently this website is capturing a very skewed and frustrating point in my academic journey, a point filled with much more revision on non comp sci related topics than I hope my later life will be. I look forward to whats to come and will start my first post probably trying to fix the counter at the bottom, farewell for now.

15:29 Friday May 01 2026 - Day 32 of 1000

Anki, again

5 hours of torture

Revising for this test has subjected me to unbeatable levels of pain, Anki has never been more un fun and I can’t wait for Wednesday to just do the test using all of this crammed knowledge, I’m more excited to demonstrate how rigorous my revision has been more than scared from exam anxiety

21:00 Monday April 27 2026 - Day 31 of 1000

Yesterday's post

Backing up database

Since I am a broke college student, I had to try and skirt the $6 for keeping the database up, so when it came to backing up this database, I forgot to back it up for the last post I made, therefore day 30's post was deleted as the only backup I had went up to day 29. Anyway, in summary I just did a lot of computer science revision for anki which I know isn't what my usual posts are about but I have been madly revising for the past 2-3 weeks and it would be a shame not to at least mention my effort.

11:59 Monday April 27 2026 - Day 30 of 1000

OSSU

HtDF Quiz

Completed the Week 2 of Systematic program design, I will admit that it definitely was quite a strange module but I am glad I took it none the less. I found the final quiz/project for it quite easy but following the HtDF recipe can leave some ambiguity which can make things fairly hard or complicated. Anyway can't wait to progress to next weeks materials.

12:17 Saturday April 25 2026 - Day 29 of 1000

OSSU

Data

For just today, I decided to skip the last practice problem on the HtDF week and move to week3, just because I wanted to learn but I was also multi-tasking between eating breakfast. Anyway I learned the cond statement, mainly used as like a switch statement but without the break statement at the end, it's ended by using else as well. I will get back to finishing week 2 likely tmr

10:12 Friday April 24 2026 - Day 28 of 1000

OSSU

HtDF

Posting for yesterday, not much happened at all. I got stuck on the last problems with it so I wasn't able to fully finish the course.

09:16 Friday April 24 2026 - Day 27 of 1000

OSSU HtDF

Further Explanations, unequivilant waterfall method

This module focuses on this recipe a lot more than i originally thought, so to expand what has already been learned and said on this blog, the professor detailed on the encounter of realizing that the signature (function i/o definition) may be slightly off or other aspects of the recipe and what do about it if this is something you only realize after being mid way through coding the further aspects of the recipe. He mentioned that you can obviously and should just change it which is why this method isn't like say a waterfall method, specifically because you won't get every aspect of it correct as you increment through each of the steps in the recipe. A lot of the learning I did throughout my hour of coding though was just running through the different coded examples and spotting common errors. As well as making more functions with the recipe to practice using it.

15:11 Wednesday April 22 2026 - Day 26 of 1000

OSSU

Continuation of function recipe design

Today I spent a lot longer than I would've anticipated on trying to understand how exactly function recipe design works, and the specifics when it comes to designing useful functions that apply to the HtDF recipe. I will admit that it first it felt like I forgot most of what I learned yesterday but despite that I was able to pick back up from where I left off (even if I had written a massive paragraph about it yesterday). I was quite surprised how long it took me to really grasp it but I can now say that it almost certainly is something I would consider vital to know when trying to design programs that are efficient and simple.

17:02 Tuesday April 21 2026 - Day 25 of 1000

OSSU Week 2

HtDF

Today I learned how to design functions using signatures, jobs and stubs. Each of theses are from the How to Design Function recipe in the BSL Racket language. The recipe for designing these functions start with defining the input and output primitives, then explaining the functions purpose as part of the job purpose part of the recipe. This explanation should be a 1 line definition of that the function is intended to do. Finally the stub is made and acts as a scaffolding for the function's very basic structure. It should contain the name, parameters and example result using the correct data type, but no body. This process helped me deepen my understanding of how functions truly work.

20:18 Monday April 20 2026 - Day 24 of 1000

OSSU

Week 1

Completed the first full week of the OSSU course, now onto the second week of systematic program design which covers the second module, this week was great and while it wasn't too challenging, it gave me a lot to think about when it came to programatic control flow and decision making in terms of structure and operational sequences of execution.

14:37 Sunday April 19 2026 - Day 23 of 1000

OSSU

If expressions, steppers and boolean logic operators

Started on finishing my progress with evaluating how if statements work, understanding their control flow and process of evaluation using not just primitive values but also with varibles and return values, then moved onto steppers which is just racket's way of doing debugging, where I got to see the evaluation process in a literal sense. Then finally finished on starting boolean logic operators like 'and', 'or', 'not' etc.

16:10 Saturday April 18 2026 - Day 22 of 1000

OSSU

Functions -> boolean expressions

Finished my progress from where I left off on functions and I have to say it was very insightful, enjoyed the ease of it and its comprehensive nature quite a lot. I have now moved onto the boolean expressions and if statements section, till tomorrow!

11:28 Friday April 17 2026 - Day 21 of 1000

OSSU

Strings and constants

For yesterday (reporting this 10m past midnight) I focused on string definitions with variables and including images into my code in racket. The images were especially strange as you could copy and paste them directly from the web into your ide and they would load in perfectly fine. Other than that I revised my knowledge on the differences between primitive calls, operators and operands.

23:14 Thursday April 16 2026 - Day 20 of 1000

OSSU

Systematic program design

I folded on the pressure of revaming this crappy website to JS and decided to start ossu, my revision is piling by the day and it's no longer child's play, I thought I could bare with it and still pull 2-4 hr coding sessions but it's simply not viable, so this course will give me something more structured to do everyday whilst being useful in terms of my career. I also enjoy the learning style and generally prefer it's schedule and organized syllabus.

20:35 Wednesday April 15 2026 - Day 19 of 1000

nodeJS

Finished crash course

After a couple hours, I managed to fully complete the crash course, the result is on my github but overall the course was very useful I learned a lot, but to specifiy the topics covered, I did work on the modules fs, url, path, crypto and events. I also did work handling get and post requests and managing the routing of a server to different pages and displaying the correct html file for this pages. This really brought my understanding of these technologies to a more clear view and I can now comprehend how the backend routing and middleware of a web server works in it's basic implementation. The course was made by traversy media, named: NodeJS crash course.

00:22 Wednesday April 15 2026 - Day 18 of 1000

Posting late

time is relative

Another nodeJS course progression, will finish the rest of the course later today, I will admit I compeletely forgot to code yesterday and started coding today at 2am, but since my sleep schedule is currently nocturnal, I think it's a good enough excuse to say it was simply unintentional, also I was studying for my Higher maths exam prior, I just got so locked in I fully forgot that I had to do this yesterday, so in respect, I will post again later today (it will be before midnight, promise) to keep the streak going!

04:18 Tuesday April 14 2026 - Day 17 of 1000

Here's for yesterday

Python project

I got this urge to forget whatever I was doing and try to instead build this artemis 2 project from scratch using python, It didn't work out as I expected and I will probably abandon the project since I don't feel like it would be the best way to spend my time considering I picked up the nodejs course just yesterday again, this whole day for me though has been very fuzzy and I need to wake up with a fresh start.

05:06 Monday April 13 2026 - Day 16 of 1000

Missed logging yesterday

Node JS crash course

Decided to return to the infamous node js crash course as I felt like I really needed a change considering I am revising for my finals while doing this and I am also doing these sessions in 1hr to 2hr increments to avoid spending too much time coding and not enough on exam revision, the 22hr course proved to feel way longer than it should've doing that so I just couldn't continue at that pace without feeling like I wasn't making enough progresss, thus the 2hr course I have picked will make the learning feel more substantial despite restarting it from scratch, but a lot of the learning I did on it was in a car so this has allowed me to refresh my knowledge of req/res and http codes etc.

21:48 Sunday April 12 2026 - Day 15 of 1000

Late night JS

Finished L11 on 22hr JS course

Today I had a massive inconvienence occur so I wasn't able to get as much done as I hoped but I wanted to stick to my word for this challenge so even if it's only light work, it's still work. I did some focusing on shorthands when it comes to JS objects as well as array index's, I finally fully understand what continue and break do, used them before but never fully remembered or understood how they work. Lastly I learned how JS stores array's that reference other array's as pass by reference and not pass by value.

21:36 Friday April 10 2026 - Day 14 of 1000

JS

Refreshing array and loops knowledge

Just spent only an hour refreshing my knowledge on how loops work and doing the practice exercises, experimenting with for each loops, while loops and regular for loops. It's really not a ton of work but just getting myself familiar with the code and getting better at being uncomfortable is what I believe I acheived most today.

16:38 Thursday April 09 2026 - Day 13 of 1000

Late post

Website tweaks

Last night I decided I should definitely at least try and update the site a little more. I’ve been meaning to tweak it somewhat often enough so that I’m able to get used to the concept of picking up code that feels somewhat unfamiliar and still be able to work with it effectively. I added a favicon and an automatic increment for the days so that way all posts have what day I’m on so there’s no need to mention it in my titles, this was quite difficult for me because Postgres and sql while simple are still foreign to me in some aspects like using functions or group by’s, I used the row number function and ordered the results by the id’s of posts to grab the results of how many rows their are and named it as a value sort of like a variable, then used it as part of the last element in the array that’s passed into the flask part of the website so that all I needed to do was display it using the extra index appended to the passed into array. It took me a while to figure out that would be the right solution but I’m happy I managed to find one that works very well as if I deleted an incorrect post, it wouldn’t count that as a day, the only issues is I can’t make a post on here on the same day unrelated to this challenge as it counts each post as one day rather that recognizing if posts are on the same day. But since I’m posting late I guess it worked out either way :)

07:33 Thursday April 09 2026 - Day 12 of 1000

Day 011

Js course

Yesterday I had a migraine so I wasn’t able to code hence why their wasn’t any post but today I was able to do some js topics on the course I am still running through, I didn’t have a lot of time in it, only did about 2 hours since I was in the car for the whole day but hey it was smthn over nothing so that’s still a win, especially after being ill.

20:37 Tuesday April 07 2026 - Day 11 of 1000

Day 010

JS Course

Today I got some work done but ultimately I could've done way more, I just need to be more firm on my time and scheduling. I did some more work on my js course but I ultimately didn't learn anything new and just progressed with more of the course I am doing. I ended with only doing an hour of work in 2 so, for next time I will try to push my programming to a more focused time to harnesss deep work.

22:20 Sunday April 05 2026 - Day 10 of 1000

Day 009

Wifi Website

Yesterday I only had the ability to spend about an hour programming since I was mainly busy with other studies, I'll have to also push back the port of my website to next week as I am still underprepared. I just spent the hour trying to fix the css to work properly as well as modifying the js elements to have classes so that they would align correctly when paired with bootstrap. Most people would probably be able to get this done much faster than me and to those people I say, I am very envious of you. I need to improve on my responsive css skills as the 'language' takes ages for me to get right, even using bootstrap. For now though the hours I spend studying will only get shorter (still not below 1 hr tho) as I need to do my run today and I also need to study for my exams. At least I am exposed to expereincing a lot more time management dependent schdules and events than I have ever been.

08:02 Sunday April 05 2026 - Day 9 of 1000

Day 008

node.js and wifi site

Today I spent around 5 hours learning node js and coding the WiFi rating site. I was doing this while riding in a car for 8 hours so it did take longer to type anything which slowed my progress a ton. But other than that I learned quite a bit including backend server setups with node js using the CreateServer method from the http library. This included using different http codes and posting files on different pages. I will upload the WiFi code tmr tho since I don’t have any WiFi myself rn lol.

20:38 Friday April 03 2026 - Day 8 of 1000

Day 007

Js and php + sql

Worked on my group project’s website functionality with js, I specifically learned how promises work and then methods. I also started my final project for the php and sql form handling website. I learned how to use the sqli php library for binding parameters to sql queries therefore avoiding sql injections and also being able to retrieve those results through the fetch method applied to a while loop. I still haven’t finished the whole thing but the basic functionality is able to check if the user is already registered to prevent duplicate data.

17:12 Thursday April 02 2026 - Day 7 of 1000

Day 006

JS Dom Review

I can’t lie, I really didn’t get a whole lot done today. I woke up pretty late which wasn’t great so I didn’t get as much time as I usually do in the mornings. I managed clock in at least 2 hours of work but for me that’s really disappointing. I can get more done tomorrow but it’s all depending on my uni and weather I can finish the upcoming assignments in a fashionable time. Anyway as for the title I spent my time reviewing the dom syntax and use cases for my website. I still haven’t ported anything yet so it’s feeling like I might have to rush this but tmr’s the last day before spring break so I’m not too worried.

16:59 Wednesday April 01 2026 - Day 6 of 1000

Day 005

C# Deserialization with json

Finished an assignment focused on the deserilizartion of C# json files, the project would take a JSON file and parse through it, assigning each variable accordingly, I really wished I spent more time though coding as I realistically only got about an hour and half in, and I wish it wasn't on the language that has nothing to do with my personal projects. So tommorow is another day and I will focus on js mark my words.

17:55 Tuesday March 31 2026 - Day 5 of 1000

Day 004

php sql injections and form sanitization/validation

For yesterday's work I spent 4 hours just going over things in php related to protecting a database from sql injections, as well as generally how to use the mysqli library in php with string interpolation to avoid security vulnerbilities. I also focused heavily evaluating my options on what I want to do moving forward given my current choices with uni and also this blog, therefore I have come to a conclusion that it's probably know for the best to switch this site over to php since it's not as relevant as other front end languages like JS. Other than that I also spent some time improving my practice with the form's retreival of data using specific super globals like $_REQUEST or $_SERVER. Overall I wish I spent more time programming today, I will get to work porting the site over as late as Thursday which will be a challenge however I know the basics of JS already and I am in need of a challenge.

03:30 Tuesday March 31 2026 - Day 4 of 1000

Day 003

Refreshing php knowledge

Spent 5 hours today just refreshing and learning some new things for my porting of this website to PHP, I learned quite a lot about receiving data from forms and handling it which is pretty similar to flask, also using certain built in methods to filter variables and the option flags associated with them, this was mainly to sanitise+validate the data in the form for storing in a db. The functions I wrote to do these operations will likely be reused as well which will make things easier. Other than that it was a pretty okay day, could've maybe been less distracted with trying to write the functions in different ways (ternary, one line if statements etc), but it's still at least a learning oppertunity :)

21:22 Sunday March 29 2026 - Day 3 of 1000

Day 002

php, maintenance and security

Today I spent most of my time learning trying to fix some small things with the site. For starters I was having a lot of errors with deployment so today was a lot of going back and fourth with render trying to fix failed deploy's. I also spent some time refreshing my PHP knowledge but apart from that I feel I could've probably done a little more. For the future I want to try and implement a more comprehensive CRUD routine to avoid having to do so many commits and redeploys, thinking everything is fully working to then just come accross a new issue. Today I learned about times attacks, HTTPS encryption through transit, as well as implementing log files as a common practice and securing databse errors within them using try and except blocks in python. Overall not the most solid 4 hours I could hope for, but it wasn't for nothing.

21:01 Saturday March 28 2026 - Day 2 of 1000

DAY 001

Postgres and Bootstrap

Since I was doing a bunch of tests yesterday I wanted to reset the db to start fresh, yesterday's progress will be marked as my first day. On that day I made progress in: - Revamping the websites almost non-existant css styling to bootstrap so that I can make it more clean and simple without sacrificing as much time - Moved the sites database over to postgres in order to use render's free database hosting because as expected, render wipes each deploy clean when redeploying so this especially taught me a lot about deployment as well as keeping database information secure. What I learned: - .gitignore: I've seen it around but never utilised it before - .env: same thing again, this massively helped me in making the security a lot easier than I originally imagined - script kiddies: bots will try to grab these .env files from your db and website constantly, checking my logs and seeing this is what inspired me to increase the security on my web app, even if it's only a little bit. - testing: Implementing routines in testing and correctly managing the process of CRUD.