We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Gamifying the study of algorithms

00:00

Formal Metadata

Title
Gamifying the study of algorithms
Title of Series
Number of Parts
118
Author
License
CC Attribution - NonCommercial - ShareAlike 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Do you remember when you used to learn algorithms? It was probably either back when you were studying for your degree, or when you were brushing up for a technical interview. If you're like most of the developers I know, solving algorithms probably went from being a fun past-time, to a bothersome necessity, to a thing of the past. Our life has been greatly improved by our tools and there's little need to know all sorting methods out there, or how to search through a tree. Or maybe we're wrong, maybe knowing these things could make a difference in how we write code. I am going to try to dispel some of the myths surrounding the study of algorithms and competitive programming, and argue that sharpening this skill is something that benefits us, as software developers, outside of passing technical tests; that knowing many algorithms makes us better and faster problem solvers. Lastly, this talk is about resources and ways in which to gamify the study of algorithms. Going at it the same way as for exams or interviews makes it very bothersome very quickly. It gets easy to lose sight of the biggest picture and to start thinking of algorithms in abstract terms, outside their applications. All these are factors that prompt the question: why should I carry on with it?
Keywords
AlgorithmPoint cloudComa BerenicesGoogolSoftware developerMultiplication signTouchscreenLecture/ConferenceComputer animation
Linear mapCoroutineLogischer EntwurfStructural loadWebsiteNumbering schemeAlgorithmLogicCoroutineWordService (economics)Point (geometry)Software developerField (computer science)Computer animation
QuicksortMultiplication signWave packetMereologyWebsitePlanningProgram flowchart
Context awarenessMathematical analysisGame theoryCombinational logicFocus (optics)TrailPlanningArithmetic progressionCartesian coordinate systemElement (mathematics)Computer animation
Source codeFitness functionQuicksortPoint (geometry)Game theoryType theoryElement (mathematics)BitVideo gameHacker (term)Wave packetComputer animation
Level (video gaming)AlgorithmData modelVisualization (computer graphics)CognitionLevel (video gaming)Natural numberIntegrated development environmentStress (mechanics)Information overloadOnline helpTask (computing)InformationVideo gameDependent and independent variablesPosition operatorStudent's t-testInternetworkingResultantAlgorithmComputer scienceGame theoryUniverse (mathematics)Data structureElement (mathematics)Dynamical systemFeedbackFocus (optics)Form (programming)Physical systemVisualization (computer graphics)Source codeOrder (biology)Graph (mathematics)Inheritance (object-oriented programming)TrailSemiconductor memoryNeuroinformatikCombinational logicGoodness of fitReduction of orderComputer animation
Source codeAlgorithmVisualization (computer graphics)Data modelCognitionFeedbackDisintegrationLevel (video gaming)Binary fileHacker (term)AlgorithmGraph (mathematics)Term (mathematics)MereologyHacker (term)Graph coloringLevel (video gaming)Moment (mathematics)Order (biology)RankingCASE <Informatik>Arithmetic meanMultiplication signPoint (geometry)Sound effectFeedbackCognitionRule of inferenceMobile appClient (computing)Statement (computer science)TowerProcess (computing)Visualization (computer graphics)TrailWebsitePerformance appraisalFormal languageProgram flowchart
Binary fileRankingSource codeHacker (term)Game theoryCoding theoryLevel (video gaming)Decision theoryHash functionNumerical taxonomyConstraint (mathematics)PressureCodeComputational complexity theoryBitAlgorithmTask (computing)HierarchyOrder (biology)Complex (psychology)Greatest elementGame theoryObservational studyMultiplication signArithmetic progressionStatement (computer science)Computer programmingConstraint (mathematics)Type theory2 (number)PressureUsabilityLevel (video gaming)Point (geometry)CognitionFeedbackBinary codeWebsiteTrailProcess (computing)CASE <Informatik>Loop (music)QuicksortCategory of beingNumerical taxonomyRule of inferenceDivision (mathematics)Computer animation
Kolmogorov complexityCodeGame theoryLevel (video gaming)Statement (computer science)Physical systemMathematical analysisLocal GroupSoftware testingCASE <Informatik>Multiplication signComplex (psychology)Game theoryBookmark (World Wide Web)Maxima and minimaNP-hardRow (database)Bit rateLevel (video gaming)TrailQuicksortSoftware testingArithmetic progressionAlgorithmStatement (computer science)NumberBinary codePoint (geometry)Different (Kate Ryan album)Forcing (mathematics)MereologyPhysical systemCodeWebsiteBoss CorporationField (computer science)Image resolutionStress (mechanics)Reduction of orderMathematical analysisResultantGraph (mathematics)Student's t-testFluidStrategy gameTerm (mathematics)Right angleXMLComputer animation
Source codeLocal GroupGame theoryAverageArithmetic meanPoint (geometry)Focus (optics)Insertion lossVideo gameComputer animation
Game theoryMusical ensemblePresentation of a groupIntegrated development environmentBitDivisorMultiplication signEuler anglesQuicksortUniverse (mathematics)Performance appraisalJSONComputer animationLecture/Conference
Kolmogorov complexityCodePhysical systemMathematicianStudent's t-testLevel (video gaming)Multiplication signElement (mathematics)BitXMLComputer animationLecture/Conference
Transcript: English(auto-generated)