Keep going as normal, just adapt the lessons to give what they may not have studied yet. In other words give a quick and usable pattern and explain only the bits of it that they need to know (give a formula and what it does but not how to derive it, give code and what it does without explaining how it does it).
Context: I teach something in between programming and mathematics (intro to machine learning) to undergrads plus a couple of non-computer science grads (e.g. biology), at a London university. I do it within a similar time-scale as you: 2 hours a week over 1/3 of the year. My course has as pre-requisites python programming (another course) and GCSE. But since those requisites are not formally tracked a lot of students just enroll due to the fanciness of ML these days.
No GCSE often means (in the worst cases) very poor mathematical understanding: e.g. people who managed to get through school without getting right triangle rules.
Surprisingly most people are pretty good at using formulas whilst not very good at thinking why the formulas work the way they do. What I do in order to get the majority of students to understand is:
- I write down the formulas I need and tell them that they just work.
- Take one part of the formula and draw a graph, then another part and draw another graph.
- Walk over the room in the same fashion as both graphs go in order to demonstrate formula behaviour.
I find that someone can understand what parts of a formula do, despite not being able to understand how we get to the formula or how the complete graph looks. e.g. we have a part of a formula which searches a bigger and bigger part of space, whilst another part of the formula reduces the first behaviour when we get more points found.
Most students are alright in being fed mathematics as something that "works for these specific problems", without the theoretical bit on how it links with the rest of mathematics. And, to be fair, whether math is something that describes the entire universe or just something we came up with to make specific problems work is an ongoing philosophical discussion.
For the programming bit, i.e. students who come without programming knowledge, I have just shallow experience. This is probably an opinionated belief so take it with a spoonful of salt.
I find that no-one ever managed to teach a student how to program. One can only do two things: give the students resources in the right order (from simple to more complicated), and give the students interesting problems to solve given their level.
For example, teaching a few lines of code that fetch an HTML page for data scraping is just boilerplate that will get forgotten; but teaching the scraping as boilerplate but then teaching some interesting analysis that can be done by walking the DOM and hyperlinks often encourages imaginative thinking.
Full example: I always give students a data scraping exercise in which they need to evaluate the percentage of male and female actors/actresses in Die Hard movies, by scraping the Wikipedia pages for the movies.