Generics in Programming
What generics are, the problem they solve, and how they look in Java, C#, TypeScript and Python — with constraints, wildcards and…
Try: python lists, javascript functions, syntax error, first project
The ideas every language shares. Start here if you have never written code before: what a program is, how variables and loops work, and how to think through a problem before you type anything.
16 guides
What generics are, the problem they solve, and how they look in Java, C#, TypeScript and Python — with constraints, wildcards and…
The difference between concurrency and parallelism, when threads help and when they do not, and the two bugs — race conditions and…
Objects bundle state with the code that changes it; functional programming keeps data and transformations apart and avoids changing anything. The same…
Big O describes how the time a piece of code takes grows as its input grows. The six classes you will meet,…
What functions really are, what makes one pure, and the functional ideas — map, filter, reduce, immutability — that make everyday code…
Beyond lists and dictionaries: stacks, queues, heaps, trees, graphs and sets, what each is genuinely good at, and when the extra complexity…
Why are there so many programming languages, and does the choice matter? A plain-English look at what languages have in common, how…
An algorithm is just a clear set of steps for getting something done. Here is what that means in code, why some…
A list holds many values under one name, in order. Here is how to read, add, remove and loop over items —…
A function is a named set of steps you can run whenever you need it. Here is how to write one, what…
A loop repeats a block of code so you do not have to write it out ten times. Here is the difference…
An if statement lets your program choose between paths. Here is how conditions work, how to combine them, and why one equals…
Related topics
The fastest way to improve is to read one guide, then build the thing it describes. Start with the basics, or jump straight to a project.