Companies Home Search Profile

State Machines and Automata: Building a RegExp Machine

Focused View

Dmitry Soshnikov

1:47:32

146 View
  • 01.01-regexp_history.mp4
    05:08
  • 01.02-regular_grammars.mp4
    09:26
  • 01.03-finite_automata.mp4
    09:15
  • 02.01-character_and_epsilon_nfa.mp4
    07:06
  • 02.02-concatenation_pattern_ab.mp4
    06:39
  • 02.03-union_pattern_ab.mp4
    06:51
  • 02.04-kleene_closure_a_.mp4
    06:01
  • 02.05-complex_machines.mp4
    04:28
  • 02.06-syntactic_sugar.mp4
    03:26
  • 02.07-nfa_optimizations.mp4
    04:46
  • 03.01-nfa_acceptor.mp4
    05:17
  • 03.02-nfa_table.mp4
    08:13
  • 03.03-regexp-tree_tool.mp4
    04:50
  • 03.04-dfa_table.mp4
    09:42
  • 03.05-dfa_minimization.mp4
    10:55
  • 03.06-regexp_match.mp4
    05:29
  • Description


    It’s not a secret that big tech companies, such as Google, Facebook, and others, organize their recruiting process around generalist engineers who understand basic fundamental systems, data structures, and algorithms. In fact, it’s a known issue in tech-recruiting; there are a lot of “programmers”, but not so many “engineers”. And what does define an engineer in this case? An ability to solve complex problems, with understanding (and experience) in those generic concepts.

    And there is a simple trick how you can gain great experience with transferable knowledge to other systems. You take some complex theoretical field, which might not (yet) be related to your main job, and implement it in a language you’re familiar with. And while you build it, you learn all the different data structures and algorithms that accommodate this system. It should specifically be something generic (for example, state machines) so that you can further transfer this knowledge to your “day-to-day” job.

    In this course, we take this approach. To study automata “theory”, we make it more practical: we take one of its widely used applications, the lexical analysis and pattern matching, and build a RegExp machine.

    More details


    User Reviews
    Rating
    0
    0
    0
    0
    0
    average 0
    Total votes0
    Focused display
    Dmitry Soshnikov
    Dmitry Soshnikov
    Instructor's Courses
    Dmitry Soshnikov is a software engineer and a lecturer on different computer science topics. He is passionate about education and focuses on high-quality educational content: concise and straight-to-the-point animated lectures with live-editing notes.
    Packt is a publishing company founded in 2003 headquartered in Birmingham, UK, with offices in Mumbai, India. Packt primarily publishes print and electronic books and videos relating to information technology, including programming, web design, data analysis and hardware.
    • language english
    • Training sessions 16
    • duration 1:47:32
    • Release Date 2023/02/14