Metadata
Title
Denken als Robots
Category
general
UUID
9ba359cb8e714027beee60a16c2a6117
Source URL
https://www.tudelft.nl/sciencecentre
Parent URL
https://www.tudelft.nl/onderwijs/studievoorlichting/praktische-zaken/scholarship...
Crawl Time
2026-03-11T05:38:58+00:00
Rendered Raw Markdown
# Denken als Robots

**Source**: https://www.tudelft.nl/sciencecentre
**Parent**: https://www.tudelft.nl/onderwijs/studievoorlichting/praktische-zaken/scholarships

body {
background-color: #FFFFFF
}

(function() {
console.log('🚀 [VibeCheck] Script actief. Wachten op Cookiebot...');
function injectSpotler(source) {
if (document.getElementById('spotler-script-loaded')) {
console.log('⚠️ [VibeCheck] Spotler script was al aanwezig (' + source + '). We doen niets.');
return;
}
console.log('✅ [VibeCheck] Triggered via: ' + source);
console.log('📦 [VibeCheck] Marketing consent is OK. Script wordt nu geïnjecteerd...');
var script = document.createElement('script');
script.id = 'spotler-script-loaded';
script.src = "https://restapi.mailplus.nl/integrationservice/app/subscribe\_popup/Ly1wHWUO5IumqzpblzWJrvynBLTEmzSq/akzgAWIpMtqHqwIQQcTBIU2Djhp7YKpq";
script.async = true;
script.onload = function() {
console.log('✨ [VibeCheck] Spotler script succesvol ingeladen. Forceer activatie...');
// Forceer events waar popup-scripts vaak op triggeren
window.dispatchEvent(new Event('load'));
window.dispatchEvent(new Event('resize'));
setTimeout(function() {
window.dispatchEvent(new Event('scroll'));
}, 500);
};
script.onerror = function() {
console.error('❌ [VibeCheck] Fout bij het laden van het Spotler script.');
};
document.getElementById('spotler-vibe-container').appendChild(script);
}
// Luister naar de status van Cookiebot (werkt bij Accept én Weiger)
window.addEventListener('CookiebotOnConsentReady', function () {
console.log('🔔 [VibeCheck] Cookiebot Consent Ready!');
if (window.Cookiebot && Cookiebot.consent && Cookiebot.consent.marketing) {
injectSpotler('Cookiebot Consent Ready (Accept)');
} else {
console.log('🚫 [VibeCheck] Marketing consent niet gegeven (Geweigerd).');
}
}, false);
// Directe check voor terugkerende bezoekers waarbij de status al in de browser staat
if (window.Cookiebot && Cookiebot.consent) {
if (Cookiebot.consent.marketing) {
injectSpotler('Directe Check (Bestaande consent)');
} else {
console.log('⏳ [VibeCheck] Bestaande consent is: Geen marketing.');
}
}
})();

### TU Delft Science Centre - Bij ons kan het.

#### Ontdek hoe verrassend techniek kan zijn.

Boek je e-tickets voor een van onze **vier Techniekstudio’s**, bezoek ons **On Tour programma** op locatie of kies voor een leuke activiteit zoals een **feestje** of een **rondleiding**. Wat je ook kiest – je start meteen met ontdekken, uitproberen en beleven.

## Nu te doen

[**→ meer Ontdekken**](https://www.tudelft.nl/sciencecentre/ontdek)

**Workshop - 8 t/m 12 jaar**

### Techniekstudio

Welke Techniekstudio ga jij ontdekken? Leren programmeren met robots? Dat kan jij!

[→ Bekijk het Techniekstudio aanbod](https://www.tudelft.nl/sciencecentre/ontdek/techniekstudio)

**Workshop - 18+ jaar**

### Makerlab

Voor studenten en makers. Werk met moderne apparatuur. Volg een introductie workshop en ga aan de slag!

[→ Ga aan de slag](https://www.tudelft.nl/sciencecentre/maken/makerlab)

**Activiteit - 6 t/m 12 jaar**

### Feestjes

Bijna jarig? Vier het met een technisch feestje. Ga aan de slag met lampjes, radertjes en heel veel meer.

[→ Bekijk het Feestjes aanbod](https://www.tudelft.nl/sciencecentre/ontdek/feestjes)

**Wandeling - Alle leeftijden**

### Secrets Tour

Ontdek de geheimen van de TU Delft tijdens de Secrets of the TU Delft Tour op de TU Delft Campus.

[→ Ontdek de Rondleidingen](https://www.tudelft.nl/sciencecentre/ontdek/rondleidingen#c1549387)

## Nu te zien

**Beleven - Alle leeftijden**

### ARIA

Ontdek de droomwereld van ARIA. Beleef dit unieke kunstwerk door ermee te experimenteren.

[→ Ontdek ARIA](https://www.tudelft.nl/sciencecentre/ontdek/aria)

**Expositie - Alle leeftijden**

### TU Delft in beeld

Deze Interactieve videomuur toont inspirerende TU Delft verhalen over wetenschap innovatie.

[→ Ontdek de videomuur](https://www.tudelft.nl/sciencecentre/ontdek/interactieve-videomuur)

## Nu Online

[**→ meer Online**](https://www.tudelft.nl/sciencecentre/ontdek)

**Beleven - Alle leeftijden**

### Skull 21 - 360˚ experience

Bekijk het unieke restauratieverhaal van onze Triceratopsschedel: Skull 21.

[→ Ontdek Skull 21](https://chimpr.com/skull21/)

**Spelen - 6+ jaar**

### Tempelcode - Minecraft

In deze game leer je programmeren binnen Minecraft. Download de gratis add-on nu!

[→ Ga aan de slag](https://www.tudelft.nl/sciencecentre/ontdek/tempelcode)

## Educatie

TU Delft organiseert voor het primair- en voorgezet onderwijs educatieve activiteiten en projecten met als doel wetenschap en techniek dichter bij de leerlingen te brengen. Dit varieert van workshops bij TU Delft Science Centre tot verschillende projectkoffers voor in de klas.

### Primair onderwijs

Ter ondersteuning van het techniekonderwijs bieden wij workshops en projectkoffers. Bekijk het aanbod en reserveer een uniek programma voor de klas.

[→ Bekijk het aanbod](https://www.tudelft.nl/sciencecentre/educatie#c1420174)

### Voortgezet onderwijs

Hoe gaat onderzoeken en ontwerpen op een Technische Universiteit nu eigenlijk in zijn werk? Dat laten we middelbare scholieren graag zelf ervaren. Om leerlingen in het voortgezet onderwijs in contact te brengen met wetenschap en technologie, organiseren wij diverse activiteiten voor de brugklas t/m 6 vwo. De begeleiding is in handen van deskundige en enthousiaste studenten en/of medewerkers van de TU Delft.

[→ Bekijk het aanbod](https://www.tudelft.nl/sciencecentre/educatie#c1428668)

### Plan je bezoek aan TU Delft Science Centre

We hopen je snel te verwelkomen! Boek je tickets vooraf via onze website. Het is eenvoudig en zorgt ervoor dat je bezoek helemaal geregeld is.

**[→ Boek een Techniekstudio](https://www.tudelft.nl/sciencecentre/ontdek/techniekstudio)\
 [**→ Route en parkeren**](https://www.tudelft.nl/sciencecentre/bezoek)\
 [→ Bezoek met school](https://www.tudelft.nl/sciencecentre/bezoek)**

## Agenda

Elk weekend en tijdens de schoolvakanties kun je onze [Techniekstudio](https://www.tudelft.nl/sciencecentre/ontdek/techniekstudio) boeken.\
Ontdek hieronder welke activiteiten nog meer plaats vinden de komende tijd!

Dit onderdeel wordt voor u geblokkeerd omdat het cookies bevat. Wilt u deze content (en anderen) alsnog bekijken? Door hier op te klikken geeft u alsnog toestemming voor het plaatsen van marketing cookies van externe partijen.

<div id="simpleCalendar">
<style nonce="86f0e99b2a725fb5405329d4fcfdced4">
#simpleCalendar {
font-family: Arial, sans-serif;
max-width: 1400px;
margin: 64px auto;
}
.cal-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 12px;
padding: 0 16px;
}
.cal-nav button {
border: 1px solid #4d4d4d;
color: #4d4d4d;
padding: 0.5rem 1rem;
font-size: 1rem;
cursor: pointer;
border-radius: 3px;
}
.cal-month-tabs {
display: flex;
gap: 5px;
flex-wrap: wrap;
}
.cal-month-tabs button {
border: none;
background: #1E6188;
padding: 0.5rem 1rem;
font-size: 1rem;
border-radius: 3px;
cursor: pointer;
color: #fff;
font-family: 'Roboto Slab', serif;
}
.cal-month-tabs button.active {
background: #0C2340;
}
.cal-scroll-container {
overflow-x: auto; overflow-y: hidden;
margin: 0 16px;
}
.cal-weekdays {
font-family: 'Roboto Slab', serif;
display: grid;
grid-template-columns: repeat(7, 1fr);
min-width: 1000px;
}
.cal-weekdays>div {
padding: 6px 8px;
font-weight: bold;
}
.cal-grid {
display: grid;
grid-template-columns: repeat(7, 1fr);
min-width: 1000px;
border: 1px solid #4d4d4d;
}
.cal-day {
display: flex;
flex-direction: column;
gap: 4px;
outline: 1px solid #4d4d4d;
min-height: 100px;
position: relative;
background: #fff;
}
.cal-day.other-month { background: #f9f9f9; color: #aaa; }
.cal-date {
font-size: 12px;
padding: 4px 6px 2px;
font-weight: bold;
}
.cal-activity {
display: flex;
flex-direction: column;
padding: 8px 10px;
gap: 10px;
cursor: pointer;
user-select: none;
}
.cal-activity-type {
font-size: 0.75rem;
opacity: 0.8;
}
.cal-activity-details {
font-size: 0.875rem;
display: flex;
flex-direction: column;
gap: 6px;
}
.cal-activity-name {
font-weight: bold;
}
.cal-toggle {
text-align: center;
padding: 8px;
outline: 1px solid #4d4d4d;
background-color: #eaeaea;
font-weight: bold;
cursor: pointer;
font-size: 14px;
margin: 0 16px;
}
</style>
<div class="cal-header">
<div class="cal-month-tabs" id="monthTabs"></div>
<div class="cal-nav">
<button id="prevWeek" class="week-nav">←</button>
<button id="nextWeek" class="week-nav">→</button>
<button id="prevMonth" class="month-nav" style="display: none;">←</button>
<button id="nextMonth" class="month-nav" style="display: none;">→</button>
</div>
</div>
<div class="cal-scroll-container">
<div class="cal-weekdays">
<div>maandag</div>
<div>dinsdag</div>
<div>woensdag</div>
<div>donderdag</div>
<div>vrijdag</div>
<div>zaterdag</div>
<div>zondag</div>
</div>
<div class="cal-grid" id="calendarGrid"></div>
</div>
<div class="cal-toggle" id="toggleView">Toon maand</div>
<script nonce="86f0e99b2a725fb5405329d4fcfdced4">
const activityTypes = {
workshop: {
label: "Workshop 13+ jaar",
backgroundColor: "#00FF85", textColor: "#000000",
url: "https://www.tudelft.nl/sciencecentre/maken/makerlab"
},
techniekstudio: {
label: "Techniekstudio",
backgroundColor: "#B239FF", textColor: "#FFFFFF",
url: "https://www.tudelft.nl/sciencecentre/ontdek/techniekstudio"
},
rondleiding\_studentlife: {
label: "Wandeling",
backgroundColor: "#4D4D4D", textColor: "#FFFFFF",
url: "https://www.tudelft.nl/sciencecentre/ontdek/rondleidingen/student-life-on-campus"
},
rondleiding\_secrets: {
label: "Wandeling",
backgroundColor: "#4D4D4D", textColor: "#FFFFFF",
url: "https://www.tudelft.nl/sciencecentre/ontdek/rondleidingen/secrets-of-the-tu-delft-tour"
}
};
// Format: "DD-MM-YYYY | StartTime-EndTime | Name | Type | AgeRange"
const activitiesRaw = [
"5-3-2026 | 13:00-14:00 | Student Life on Campus | rondleiding\_studentlife | Alle leeftijden",
"11-3-2026 | 13:00-14:00 | Student Life on Campus | rondleiding\_studentlife | Alle leeftijden",
"19-3-2026 | 13:00-14:00 | Student Life on Campus | rondleiding\_studentlife | Alle leeftijden",
"25-3-2026 | 13:00-14:00 | Student Life on Campus | rondleiding\_studentlife | Alle leeftijden",
"1-3-2026 | 14:00-16:45 | Programmeren van robots | techniekstudio | 8 t/m 12 jaar",
"14-3-2026 | 14:00-16:45 | Programmeren van robots | techniekstudio | 8 t/m 12 jaar",
"15-3-2026 | 10:00-12:45 | Programmeren van robots | techniekstudio | 8 t/m 12 jaar",
"29-3-2026 | 14:00-16:45 | Programmeren van robots | techniekstudio | 8 t/m 12 jaar",
"5-3-2026 | 14:30-16:30 | Secrets of the TU Delft | rondleiding\_secrets | Alle leeftijden",
"11-3-2026 | 14:30-16:30 | Secrets of the TU Delft | rondleiding\_secrets | Alle leeftijden",
"19-3-2026 | 14:30-16:30 | Secrets of the TU Delft | rondleiding\_secrets | Alle leeftijden",
"25-3-2026 | 14:30-16:30 | Secrets of the TU Delft | rondleiding\_secrets | Alle leeftijden",
"7-3-2026 | 10:00-12:45 | Denken als robots | techniekstudio | 8 t/m 12 jaar",
"8-3-2026 | 14:00-16:45 | Denken als robots | techniekstudio | 8 t/m 12 jaar",
"21-3-2026 | 14:00-16:45 | Denken als robots | techniekstudio | 8 t/m 12 jaar",
"22-3-2026 | 10:00-12:45 | Denken als robots | techniekstudio | 8 t/m 12 jaar",
"1-3-2026 | 10:00-12:45 | Experimenteren met kunst | techniekstudio | 8 t/m 12 jaar",
"14-3-2026 | 10:00-12:45 | Experimenteren met kunst | techniekstudio | 8 t/m 12 jaar",
"15-3-2026 | 14:00-16:45 | Experimenteren met kunst | techniekstudio | 8 t/m 12 jaar",
"29-3-2026 | 10:00-12:45 | Experimenteren met kunst | techniekstudio | 8 t/m 12 jaar",
"8-3-2026 | 13:00-17:00 | OPEN Makerlab | workshop | 13+ jaar",
"21-3-2026 | 13:00-17:00 | OPEN Makerlab | workshop | 13+ jaar",
"7-3-2026 | 14:00-16:45 | Maken met plastics | techniekstudio | 8 t/m 12 jaar",
"8-3-2026 | 10:00-12:45 | Maken met plastics | techniekstudio | 8 t/m 12 jaar",
"21-3-2026 | 10:00-12:45 | Maken met plastics | techniekstudio | 8 t/m 12 jaar",
"22-3-2026 | 14:00-16:45 | Maken met plastics | techniekstudio | 8 t/m 12 jaar",
// April activities
"2-4-2026 | 14:00-15:00 | Student Life on Campus | rondleiding\_studentlife | Alle leeftijden",
"8-4-2026 | 14:00-15:00 | Student Life on Campus | rondleiding\_studentlife | Alle leeftijden",
"16-4-2026 | 14:00-15:00 | Student Life on Campus | rondleiding\_studentlife | Alle leeftijden",
"22-4-2026 | 14:00-15:00 | Student Life on Campus | rondleiding\_studentlife | Alle leeftijden",
"6-4-2026 | 10:00-12:45 | Programmeren van robots | techniekstudio | 8 t/m 12 jaar",
"6-4-2026 | 14:00-16:45 | Programmeren van robots | techniekstudio | 8 t/m 12 jaar",
"11-4-2026 | 14:00-16:45 | Programmeren van robots | techniekstudio | 8 t/m 12 jaar",
"12-4-2026 | 10:00-12:45 | Programmeren van robots | techniekstudio | 8 t/m 12 jaar",
"25-4-2026 | 10:00-12:45 | Programmeren van robots | techniekstudio | 8 t/m 12 jaar",
"25-4-2026 | 14:00-16:45 | Programmeren van robots | techniekstudio | 8 t/m 12 jaar",
"28-4-2026 | 10:00-12:45 | Programmeren van robots | techniekstudio | 8 t/m 12 jaar",
"28-4-2026 | 14:00-16:45 | Programmeren van robots | techniekstudio | 8 t/m 12 jaar",
"30-4-2026 | 10:00-12:45 | Programmeren van robots | techniekstudio | 8 t/m 12 jaar",
"30-4-2026 | 14:00-16:45 | Programmeren van robots | techniekstudio | 8 t/m 12 jaar",
"2-4-2026 | 15:30-17:30 | Secrets of the TU Delft | rondleiding\_secrets | Alle leeftijden",
"8-4-2026 | 15:30-17:30 | Secrets of the TU Delft | rondleiding\_secrets | Alle leeftijden",
"16-4-2026 | 15:30-17:30 | Secrets of the TU Delft | rondleiding\_secrets | Alle leeftijden",
"22-4-2026 | 15:30-17:30 | Secrets of the TU Delft | rondleiding\_secrets | Alle leeftijden",
"4-4-2026 | 10:00-12:45 | Denken als robots | techniekstudio | 8 t/m 12 jaar",
"4-4-2026 | 14:00-16:45 | Denken als robots | techniekstudio | 8 t/m 12 jaar",
"18-4-2026 | 14:00-16:45 | Denken als robots | techniekstudio | 8 t/m 12 jaar",
"19-4-2026 | 10:00-12:45 | Denken als robots | techniekstudio | 8 t/m 12 jaar",
"26-4-2026 | 10:00-12:45 | Denken als robots | techniekstudio | 8 t/m 12 jaar",
"26-4-2026 | 14:00-16:45 | Denken als robots | techniekstudio | 8 t/m 12 jaar",
"29-4-2026 | 10:00-12:45 | Denken als robots | techniekstudio | 8 t/m 12 jaar",
"29-4-2026 | 14:00-16:45 | Denken als robots | techniekstudio | 8 t/m 12 jaar",
"6-4-2026 | 10:00-12:45 | Experimenteren met kunst | techniekstudio | 8 t/m 12 jaar",
"6-4-2026 | 14:00-16:45 | Experimenteren met kunst | techniekstudio | 8 t/m 12 jaar",
"11-4-2026 | 10:00-12:45 | Experimenteren met kunst | techniekstudio | 8 t/m 12 jaar",
"12-4-2026 | 14:00-16:45 | Experimenteren met kunst | techniekstudio | 8 t/m 12 jaar",
"25-4-2026 | 10:00-12:45 | Experimenteren met kunst | techniekstudio | 8 t/m 12 jaar",
"25-4-2026 | 14:00-16:45 | Experimenteren met kunst | techniekstudio | 8 t/m 12 jaar",
"28-4-2026 | 10:00-12:45 | Experimenteren met kunst | techniekstudio | 8 t/m 12 jaar",
"28-4-2026 | 14:00-16:45 | Experimenteren met kunst | techniekstudio | 8 t/m 12 jaar",
"30-4-2026 | 10:00-12:45 | Experimenteren met kunst | techniekstudio | 8 t/m 12 jaar",
"30-4-2026 | 14:00-16:45 | Experimenteren met kunst | techniekstudio | 8 t/m 12 jaar",
"5-4-2026 | 13:00-17:00 | OPEN Makerlab | workshop | 13+ jaar",
"18-4-2026 | 13:00-17:00 | OPEN Makerlab | workshop | 13+ jaar",
"30-4-2026 | 13:00-17:00 | OPEN Makerlab | workshop | 13+ jaar",
"4-4-2026 | 10:00-12:45 | Maken met plastics | techniekstudio | 8 t/m 12 jaar",
"4-4-2026 | 14:00-16:45 | Maken met plastics | techniekstudio | 8 t/m 12 jaar",
"18-4-2026 | 10:00-12:45 | Maken met plastics | techniekstudio | 8 t/m 12 jaar",
"19-4-2026 | 14:00-16:45 | Maken met plastics | techniekstudio | 8 t/m 12 jaar",
"26-4-2026 | 10:00-12:45 | Maken met plastics | techniekstudio | 8 t/m 12 jaar",
"26-4-2026 | 14:00-16:45 | Maken met plastics | techniekstudio | 8 t/m 12 jaar",
"29-4-2026 | 10:00-12:45 | Maken met plastics | techniekstudio | 8 t/m 12 jaar",
"29-4-2026 | 14:00-16:45 | Maken met plastics | techniekstudio | 8 t/m 12 jaar"
];
const today = new Date();
let currentDate = new Date(today);
let monthView = false;
function parseActivities() {
return activitiesRaw.map(line => {
const parts = line.split("|").map(p => p.trim());
// Parse Dutch date format: DD-MM-YYYY
const dateParts = parts[0].split("-");
const day = parseInt(dateParts[0]);
const month = parseInt(dateParts[1]) - 1; // Month is 0-indexed in JavaScript
const year = parseInt(dateParts[2]);
return {
date: new Date(year, month, day),
timeRange: parts[1],
name: parts[2],
type: parts[3],
ageRange: parts[4]
};
});
}
const activities = parseActivities();
function getMonday(d) {
const date = new Date(d);
const day = (date.getDay() + 6) % 7;
date.setDate(date.getDate() - day);
return date;
}
// Render de kalender op basis van currentDate en monthView
function render() {
const grid = document.getElementById("calendarGrid");
grid.innerHTML = "";
// Bepaal de startdatum van de kalender (maandag van de week of maandag van de maand)
const start = monthView
? getMonday(new Date(currentDate.getFullYear(), currentDate.getMonth(), 1))
: getMonday(currentDate);
// In maandweergave tonen we 6 weken (42 dagen), in weekweergave tonen we 1 week (7 dagen)
const totalDays = monthView ? 42 : 7;
// Genereer de dagcellen
for (let i = 0; i < totalDays; i++) {
const day = new Date(start);
day.setDate(start.getDate() + i);
const dayDiv = document.createElement("div");
dayDiv.className = "cal-day";
if (day.getMonth() !== currentDate.getMonth()) {
dayDiv.classList.add("other-month");
}
const dateLabel = document.createElement("div");
dateLabel.className = "cal-date";
dateLabel.textContent = day.getDate();
dayDiv.appendChild(dateLabel);
activities.forEach(act => {
if (
act.date.getFullYear() === day.getFullYear() &&
act.date.getMonth() === day.getMonth() &&
act.date.getDate() === day.getDate()
) {
const actDiv = document.createElement("div");
actDiv.className = "cal-activity";
// Stel kleuren en label in op basis van het type activiteit
const typeObj = activityTypes[act.type];
actDiv.style.background = typeObj
? typeObj.backgroundColor
: "#444";
actDiv.style.color = typeObj
? typeObj.textColor
: "#fff";
// Make clickable and link to URL
if (typeObj && typeObj.url) {
actDiv.onclick = () => {
window.open(typeObj.url, "\_self");
};
}
const typeLabel = document.createElement("div");
typeLabel.className = "cal-activity-type";
typeLabel.textContent = typeObj ? typeObj.label : "";
actDiv.appendChild(typeLabel);
const actDetailsContainer = document.createElement("div");
actDetailsContainer.className = "cal-activity-details";
const actName = document.createElement("div");
actName.className = "cal-activity-name";
actName.textContent = act.name;
actDetailsContainer.appendChild(actName);
const actTime = document.createElement("div");
actTime.className = "cal-activity-time";
actTime.textContent = act.timeRange;
actDetailsContainer.appendChild(actTime);
actDiv.appendChild(actDetailsContainer);
dayDiv.appendChild(actDiv);
}
});
grid.appendChild(dayDiv);
}
renderMonthTabs();
updateNavigationVisibility();
updateButtonStates();
}
// Render knoppen voor maanden die activiteiten bevatten, plus huidige maand
function renderMonthTabs() {
const tabs = document.getElementById("monthTabs");
tabs.innerHTML = "";
// Gebruik een Set om unieke maanden te verzamelen
const monthsWithActivities = new Set(
activities
.filter(a => a.date >= new Date(today.getFullYear(), today.getMonth(), 1))
.map(a => a.date.getFullYear() + "-" + a.date.getMonth())
);
// Zorg dat de huidige maand altijd een tab heeft, zelfs als er geen activiteiten zijn
monthsWithActivities.add(today.getFullYear() + "-" + today.getMonth());
// Sorteer de maanden chronologisch
monthsWithActivities.forEach(key => {
const [year, month] = key.split("-").map(Number);
const btn = document.createElement("button");
const date = new Date(year, month);
btn.textContent = date.toLocaleString("nl-NL", { month: "long", year: "numeric" });
if (
currentDate.getFullYear() === year &&
currentDate.getMonth() === month
) {
btn.classList.add("active");
}
btn.onclick = () => {
currentDate = new Date(year, month, 1);
render();
};
tabs.appendChild(btn);
});
}
// Toon alleen weeknavigatie in weekweergave, en maandnavigatie in maandweergave
function updateNavigationVisibility() {
const weekNavButtons = document.querySelectorAll(".week-nav");
const monthNavButtons = document.querySelectorAll(".month-nav");
if (monthView) {
weekNavButtons.forEach(btn => btn.style.display = "none");
monthNavButtons.forEach(btn => btn.style.display = "inline-block");
} else {
weekNavButtons.forEach(btn => btn.style.display = "inline-block");
monthNavButtons.forEach(btn => btn.style.display = "none");
}
}
// Schakel navigatieknoppen uit als ze naar een maand zonder activiteiten zouden leiden
function updateButtonStates() {
const currentMonth = today.getFullYear() \* 12 + today.getMonth();
if (monthView) {
// Month navigation logic
const prevMonthBtn = document.getElementById("prevMonth");
const nextMonthBtn = document.getElementById("nextMonth");
// Check if prev month would go before current month
const prevMonthDate = new Date(currentDate.getFullYear(), currentDate.getMonth() - 1, 1);
const prevMonth = prevMonthDate.getFullYear() \* 12 + prevMonthDate.getMonth();
if (prevMonth < currentMonth) {
prevMonthBtn.disabled = true;
prevMonthBtn.style.opacity = "0.5";
prevMonthBtn.style.cursor = "default";
} else {
prevMonthBtn.disabled = false;
prevMonthBtn.style.opacity = "1";
prevMonthBtn.style.cursor = "pointer";
}
// Check if next month has activities
const nextMonthDate = new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 1);
const nextMonth = nextMonthDate.getFullYear() \* 12 + nextMonthDate.getMonth();
const hasActivitiesInOrAfterMonth = activities.some(act => {
const actMonth = act.date.getFullYear() \* 12 + act.date.getMonth();
return actMonth >= nextMonth;
});
if (!hasActivitiesInOrAfterMonth) {
nextMonthBtn.disabled = true;
nextMonthBtn.style.opacity = "0.5";
nextMonthBtn.style.cursor = "default";
} else {
nextMonthBtn.disabled = false;
nextMonthBtn.style.opacity = "1";
nextMonthBtn.style.cursor = "pointer";
}
} else {
// Week navigatielogica
const prevWeekBtn = document.getElementById("prevWeek");
const nextWeekBtn = document.getElementById("nextWeek");
// Check of vorige week zou gaan naar een maand vóór de huidige maand
const prevWeekDate = new Date(currentDate);
prevWeekDate.setDate(prevWeekDate.getDate() - 7);
const prevWeekMonth = prevWeekDate.getFullYear() \* 12 + prevWeekDate.getMonth();
if (prevWeekMonth < currentMonth) {
prevWeekBtn.disabled = true;
prevWeekBtn.style.opacity = "0.5";
prevWeekBtn.style.cursor = "default";
} else {
prevWeekBtn.disabled = false;
prevWeekBtn.style.opacity = "1";
prevWeekBtn.style.cursor = "pointer";
}
// Check of volgende week zou gaan naar een maand zonder activiteiten
const nextWeekDate = new Date(currentDate);
nextWeekDate.setDate(nextWeekDate.getDate() + 7);
const nextWeekMonth = nextWeekDate.getFullYear() \* 12 + nextWeekDate.getMonth();
const hasActivitiesInOrAfterMonth = activities.some(act => {
const actMonth = act.date.getFullYear() \* 12 + act.date.getMonth();
return actMonth >= nextWeekMonth;
});
if (!hasActivitiesInOrAfterMonth) {
nextWeekBtn.disabled = true;
nextWeekBtn.style.opacity = "0.5";
nextWeekBtn.style.cursor = "default";
} else {
nextWeekBtn.disabled = false;
nextWeekBtn.style.opacity = "1";
nextWeekBtn.style.cursor = "pointer";
}
}
}
// Event handlers voor navigatieknoppen
document.getElementById("prevWeek").onclick = () => {
if (!document.getElementById("prevWeek").disabled) {
currentDate.setDate(currentDate.getDate() - 7);
render();
}
};
document.getElementById("nextWeek").onclick = () => {
if (!document.getElementById("nextWeek").disabled) {
currentDate.setDate(currentDate.getDate() + 7);
render();
}
};
document.getElementById("prevMonth").onclick = () => {
if (!document.getElementById("prevMonth").disabled) {
currentDate.setMonth(currentDate.getMonth() - 1);
render();
}
};
document.getElementById("nextMonth").onclick = () => {
if (!document.getElementById("nextMonth").disabled) {
currentDate.setMonth(currentDate.getMonth() + 1);
render();
}
};
document.getElementById("toggleView").onclick = () => {
monthView = !monthView;
document.getElementById("toggleView").textContent =
monthView ? "Toon week" : "Toon maand";
render();
};
render();
</script>
</div>

## Nieuws

## Nieuws

[03 maart 2026

### Eén jaar Techniekstudio bij TU Delft Science Centre](https://www.tudelft.nl/2026/science-centre/een-jaar-techniekstudio-bij-tu-delft-science-centre-1)

[02 maart 2026

### TU Delft Science Centre start realisatie nieuwe publieksbeleving](https://www.tudelft.nl/2026/science-centre/tu-delft-science-centre-start-realisatie-nieuwe-publieksbeleving)

[09 februari 2026

### Duurzame vernieuwing bij TU Delft Science Centre](https://www.tudelft.nl/2026/science-centre/duurzame-vernieuwing-bij-tu-delft-science-centre)

[07 februari 2026

### Maker Faire Delft - 8 mei 2026](https://www.tudelft.nl/2026/science-centre/maker-faire-delft-8-mei-2026)

[27 januari 2026

### Nieuwe Techniekstudio: Denken als Robots](https://www.tudelft.nl/2026/science-centre/nieuwe-techniekstudio-denken-als-robots)

[26 januari 2026

### Robocup Jr. 2026 - Bouw, test en win met je zelfgemaakte robot](https://www.tudelft.nl/2026/science-centre/robocup-jr-2026)

[25 januari 2026

### Nieuw: Student Life on Campus](https://www.tudelft.nl/2026/science-centre/nieuw-student-life-on-campus)

[15 januari 2026

### TU Delft in Beeld - een tentoonstelling met een duurzaam verhaal.](https://www.tudelft.nl/2025/science-centre/tu-delft-in-beeld-hergebruik-op-een-unieke-manier)

Ga naar vorig item

Ga naar volgend item

### Volg ons op social media!

### Volg ons op social media!

Dit onderdeel wordt voor u geblokkeerd omdat het cookies bevat. Wilt u deze content (en anderen) alsnog bekijken? Door hier op te klikken geeft u alsnog toestemming voor het plaatsen van marketing cookies van externe partijen.

<div id="flockler-embed-19193f2f58e051da6295bb407c852802"></div>
<script src="https://plugins.flockler.com/embed/187fab8b9170c278b3df1384bec12d33/19193f2f58e051da6295bb407c852802" async nonce="86f0e99b2a725fb5405329d4fcfdced4"></script>