
Reino Unido · 2026/27
The University of Edinburgh
43 prácticas de laboratorio para el temario de Edinburgh.
Edinburgh Informatics, de primero a cuarto: programación, algoritmos y estructuras de datos, sistemas informáticos, compiladores y bases de datos. Cada práctica está guiada paso a paso, se compila y se comprueba con una cadena de herramientas real en tu propio equipo: el modelo revisa tu código después, no decide si has aprobado.
Actualizado
Semestre a semestre
Programa: Computer Science BSc (Hons) / Informatics MInf. Plan: DRPS 2026/27. Abre una asignatura para ver sus unidades prácticas y la práctica de laboratorio que GroutCode incluye para cada una.
Year 1
1 asignatura3 prácticasPython- INFR07004Python
Informatics 1 - Introduction to Programming
3
prácticas
- Python fundamentals — types, operators, loops, conditionals and functions
- A tested gradebook — debugging, refactoring and test-driven code
- 1Python fundamentals — types, operators, loops, conditionals and functionsUnidad I · Fundamental Principles of Programming
- 2A tested gradebook — debugging, refactoring and test-driven codeUnidad II · Software Engineering Practice in Code
- 3Reviewing AI-generated code — find the errors and inefficienciesUnidad III · Extended Principles and AI-Assisted Coding
Year 2
3 asignaturas13 prácticasPythonCJava- INFR08026Python
Informatics 2 - Introduction to Algorithms and Data Structures
5
prácticas
- Measuring algorithms — case analysis, asymptotics and recurrences
- Stacks, queues, linked lists and sorting from scratch
- 1Measuring algorithms — case analysis, asymptotics and recurrencesUnidad I · Asymptotic Notation and Algorithmic Analysis
- 2Stacks, queues, linked lists and sorting from scratchUnidad II · Sequential Data Structures and Sorting
- 3Heaps, binary search trees and a chained hash map — built from listsUnidad III · Trees, Heaps and Hashing
- 4Graph algorithms — traversal, ordering, shortest paths, spanning trees and backtrackingUnidad IV · Graphs and Graph Algorithms
- 5Dynamic programming, spelling correction and the edge of computabilityUnidad V · Dynamic Programming and Complexity Classes
- INFR08027C
Informatics 2C - Introduction to Computer Systems
4
prácticas
- Bits, fields, two's complement and IEEE floats in C
- A MIPS simulator in C — decode, execute, and compile a loop by hand
- 1Bits, fields, two's complement and IEEE floats in CUnidad I · Data Representation and the C Language
- 2A MIPS simulator in C — decode, execute, and compile a loop by handUnidad II · Instruction Set Architecture
- 3Caches, page tables, a TLB and a scheduler — the environment a program runs inUnidad III · Program Execution Environment
- 4From gates to a MIPS processor — adders, an ALU, registers and a multi-cycle CPUUnidad IV · Digital Logic and Processor Structure
- INFR08032Java
Informatics 2 - Software Engineering and Professional Practice
4
prácticas
- Requirements toolkit — parsing, checking, prioritising and tracing a changing specification
- From UML to Java — an order system built from its class diagram and state machine
- 1Requirements toolkit — parsing, checking, prioritising and tracing a changing specificationUnidad I · Requirements Analysis
- 2From UML to Java — an order system built from its class diagram and state machineUnidad II · Software Design with UML
- 3A team's toolbench — test runner, diff and patch, issue tracker and review gate in JavaUnidad III · Construction and Testing in Java
- 4A compliance toolkit for a student-records serviceUnidad IV · Professional, Legal and Ethical Issues
Year 3
3 asignaturas14 prácticasJavaC++SQL- INFR10065Java
Compiling Techniques
4
prácticas
- A compiler front end: lexer, recursive descent and LL(1) tables
- Semantic analysis: abstract syntax, scoped symbol tables and a type checker
- 1A compiler front end: lexer, recursive descent and LL(1) tablesUnidad I · Lexical Analysis and Parsing
- 2Semantic analysis: abstract syntax, scoped symbol tables and a type checkerUnidad II · Abstract Syntax and Semantic Analysis
- 3Intermediate code: frames, three-address translation, basic blocks and tracesUnidad III · Intermediate Code
- 4A compiler back end: liveness, graph-colouring register allocation and RISC-V selectionUnidad IV · Code Generation and Register Allocation
- INFR10079C++
Operating Systems
5
prácticas
- A toy kernel: traps, system calls, interrupts and a preemptive timer
- CPU schedulers, a bounded pipe, and fork versus threads
- 1A toy kernel: traps, system calls, interrupts and a preemptive timerUnidad I · The OS Kernel
- 2CPU schedulers, a bounded pipe, and fork versus threadsUnidad II · Process and Time Management
- 3Semaphores, a monitor, races and the Banker's algorithmUnidad III · Resource Management
- 4Memory management: allocators, page tables, a TLB and page replacementUnidad IV · Memory Management
- 5Disk scheduling, file-system structures, nested paging and containersUnidad V · Storage Management and Virtualization
- INFR10080SQL
Introduction to Databases
5
prácticas
- Querying a course database: relations, multisets and aggregation in SQL
- Relational algebra, calculus and Datalog, translated into SQL
- 1Querying a course database: relations, multisets and aggregation in SQLUnidad I · The Relational Model and SQL
- 2Relational algebra, calculus and Datalog, translated into SQLUnidad II · Query Languages
- 3Constraints that refuse bad data, and a BCNF decompositionUnidad III · Database Design
- 4Nested queries, NULLs and certain answers, and triggersUnidad IV · Advanced SQL and Application Access
- 5Schedules, locks, indexes and cost estimates, analysed in SQLUnidad V · Transactions, Indexing and Query Evaluation
Year 4
3 asignaturas13 prácticasJavaCPython- INFR11217Java
Advanced Database Systems (UG)
5
prácticas
- Row stores, column stores and the disk beneath them
- Index structures: B+-trees, hashing, z-order and a learned index
- 1Row stores, column stores and the disk beneath themUnidad I · Architectures and Storage
- 2Index structures: B+-trees, hashing, z-order and a learned indexUnidad II · Indexing
- 3Query operators and a dynamic-programming join optimiserUnidad III · Query Evaluation and Optimisation
- 4Transactions: serialisability, locking, MVCC and recoveryUnidad IV · Transaction Management
- 5Distributed data: partitioning, 2PC, consistent hashing and vector clocksUnidad V · Distributed and Big Data Systems
- INFR11226C
Parallel Programming Languages and Systems (Level 11) (UG)
4
prácticas
- Models of parallelism in Pthreads: decomposition, reduction, scan and a bag of tasks
- Shared-variable synchronization: locks, semaphores, barriers and monitors in Pthreads
- 1Models of parallelism in Pthreads: decomposition, reduction, scan and a bag of tasksUnidad I · Models of Parallelism
- 2Shared-variable synchronization: locks, semaphores, barriers and monitors in PthreadsUnidad II · Shared Variable Programming
- 3Message passing from channels up: an MPI-style communicator with collectivesUnidad III · Message Passing Programming
- 4Linda tuple spaces and TBB-style parallel_for and parallel_reduceUnidad IV · Alternative Approaches
- INFR11229Python
Text Technologies for Data Science (UG)
4
prácticas
- A search engine's text pipeline: tokenise, normalise, stop, stem, then Zipf and Heaps
- A search engine from scratch — inverted index, Boolean, phrase and ranked retrieval
- 1A search engine's text pipeline: tokenise, normalise, stop, stem, then Zipf and HeapsUnidad I · Text Processing Foundations
- 2A search engine from scratch — inverted index, Boolean, phrase and ranked retrievalUnidad II · Indexing and Search
- 3An IR evaluation script — precision, recall, MAP, nDCG and significance testsUnidad III · Evaluation
- 4Text classification and corpus analysis — features, Naive Bayes, evaluation and RAG retrievalUnidad IV · Text Classification and Analysis
El temario completo de 34 asignaturas está transcrito en la aplicación, incluidas las asignaturas teóricas. Las prácticas están elaboradas siguiendo los códigos de asignatura que tienen trabajo de laboratorio, y la lista crece con cada versión.
GroutCode no está afiliado a The University of Edinburgh ni cuenta con su respaldo. Los códigos y nombres de las asignaturas se han transcrito de los documentos del plan publicados por la institución.
Cómo se hace una práctica
Los mismos cinco pasos en todas las prácticas y en todos los lenguajes.
- 1
Elige tu temario
Selecciona tu universidad o consejería y el semestre o curso en el que estás. La lista de asignaturas es el plan oficial transcrito, no una aproximación.
- 2
Abre una práctica
Cada práctica está guiada paso a paso para una asignatura concreta, con un archivo inicial que editas tú y un archivo de pruebas que no debes tocar.
- 3
Escribe tú el código
El archivo inicial trae las firmas y los TODO. Tú los implementas en el editor, en el lenguaje que se usa realmente en tu asignatura.
- 4
Ejecuta las comprobaciones
La cadena de herramientas compila y ejecuta las pruebas: entre 8 y 15 a lo largo de la práctica, una por paso, para que descubras qué cambio ha roto qué.
- 5
Recibe la revisión
Cuando las pruebas pasan, el modelo lee tu implementación y te dice con qué entrada se rompe. Nunca es él quien dicta el aprobado o el suspenso.
Por qué corrige el compilador y no el modelo
La forma obvia de construir una herramienta de laboratorio con IA es dejar que el modelo lea el código del estudiante y diga si es correcto. Es también la forma de acabar con una herramienta en la que nadie puede confiar. Un modelo te dirá que tu código funciona cuando el compilador dice lo contrario, y te suspenderá por un estilo que resulta que no le gusta.
Por eso los dos trabajos están separados:
- El modelo diseña la práctica, escribe el archivo inicial y las pruebas y, una vez que las pruebas pasan, lee lo que has escrito de verdad y te dice con qué entrada se rompe.
- La cadena de herramientas decide si compila y si cada paso pasa. Ese veredicto no se negocia y el modelo nunca lo emite.
Y por qué pasos en lugar de una única tarea grande
Una práctica de 40 a 60 minutos con un solo Run al final le da a alguien que empieza un bit de información por hora, y llega cuando ya ha tomado todas las decisiones. Aquí cada práctica tiene entre 8 y 15 pasos, cada uno con su propia instrucción y su propia comprobación, para que descubras qué cambio ha roto qué mientras todavía recuerdas haberlo hecho.
Preguntas frecuentes
¿GroutCode cubre el plan 2026/27 de Edinburgh?
Sí. GroutCode incluye el plan 2026/27 de Edinburgh transcrito para Computer Science BSc (Hons) / Informatics MInf —34 asignaturas— con 43 prácticas de laboratorio elaboradas y asociadas a códigos de asignatura concretos. El temario se transcribió a partir de los documentos oficiales, y en la aplicación queda registrada la fuente y la suma de verificación de cada uno.
¿Qué lenguajes se usan en las prácticas de Edinburgh?
Java (13 prácticas), Python (12 prácticas), C (8 prácticas), C++ (5 prácticas), SQL (5 prácticas). El lenguaje se fija por código de asignatura en lugar de deducirlo del título, porque la misma materia se imparte en lenguajes distintos según la institución.
¿La IA me hace la práctica directamente?
No. El archivo inicial trae las firmas y los TODO; los implementas tú. Es la cadena de herramientas, y no el modelo, la que decide si tu código compila y si cada paso pasa, de modo que la IA no puede decirte que tu código funciona cuando el compilador opina lo contrario. Lo que sí hace después es leer tu implementación y señalarte la entrada con la que se rompe.
¿Las prácticas funcionan sin conexión?
Las prácticas, el temario y el ejecutor de pruebas van incluidos en la aplicación y se ejecutan en local, así que el ciclo de compilar y comprobar funciona sin conexión. El paso final de revisión usa un modelo, que puede ser local o en la nube con tu propia clave.
¿Qué necesito tener instalado?
GroutCode detecta qué cadenas de herramientas hay en tu equipo y te indica qué falta y cómo solucionarlo. Necesitas el compilador o intérprete del lenguaje que use tu asignatura: un compilador de C, un JDK, Python, Node o SQLite.
Otros temarios

Oxford
University of Oxford
Las fichas de asignatura de Computer Science de University of Oxford para 2026-27: bases de datos, implementación de sistemas de bases de datos e IA.
27
prácticas

Cambridge
University of Cambridge
El Computer Science Tripos de Cambridge, Parts IA y IB: algoritmos, bases de datos, programación orientada a objetos, C y C++.
36
prácticas

Imperial College
Imperial College London
El BEng/MEng Computing de Imperial College London: prácticas de computación, algoritmos, bases de datos, sistemas operativos y aprendizaje automático.
24
prácticas
Haz tus prácticas de Edinburgh con las comprobaciones incluidas
GroutCode va incluido en todas las licencias de Grout Suite. Descarga gratuita para Windows y macOS.
Descargar GroutCode