When Booleans Are Not Enough... State Machines?

  Рет қаралды 25,825

Next Day Video

Next Day Video

Күн бұрын

Пікірлер
@madhavsingh7345
@madhavsingh7345 2 жыл бұрын
That is very useful and exactly what I needed. A project I'm working on right now is polluted with flags, and this is going to help so much.
@EloiTeaching
@EloiTeaching 4 жыл бұрын
Surprise of how small are the commentary count on this video. This video is amazing !
@csharp609
@csharp609 3 жыл бұрын
The clearest explanation about the state machine, Thanks.
@derduskenga
@derduskenga 4 жыл бұрын
Genius! Stumbled on this when I was almost giving up
@AntonioDoesMetal
@AntonioDoesMetal 3 ай бұрын
I've watched tons and tons of tech talks in the past few years and this one was one of the best I've seen. Thanks for sharing
@madsxcva
@madsxcva Жыл бұрын
great talk
@user-uh2cr9so8l
@user-uh2cr9so8l 3 жыл бұрын
Highlighted the use case of state machine really well, I needed that. Shame the implementation used a library though
@spaceyfounder5040
@spaceyfounder5040 5 жыл бұрын
Freaking useful!
@ashwinmathews9859
@ashwinmathews9859 Жыл бұрын
Excellent video
@onlymecz
@onlymecz 2 жыл бұрын
Exactly what I needed!! Thank you so much!
@devtest8078
@devtest8078 3 жыл бұрын
Excellent talk. State Machines very well explained. Well done Harrington Joseph.
@lycantropos
@lycantropos Жыл бұрын
in the next iteration people using this pattern will understand that using separate classes to switch between states is a much better approach that can be checked by static type checkers like `mypy` in Python or a compiler in any of OO compiled languages
@lepidoptera9337
@lepidoptera9337 Жыл бұрын
You must be joking... did I miss the sarcasm? Why in the world would you ever smear a state machine over several classes???? That makes it almost impossible to follow your program logic. The very beauty of a state machine with e.g. a switch statement is that it's all in one place... so you (and the people who have to maintain your legacy code!) can see immediately where things are going wrong. This also makes extending the state machine is nearly trivial. You are a good example of what's wrong with the OOP crowd.
@aleksandrkubar6255
@aleksandrkubar6255 2 жыл бұрын
Great presentation, thanks!
@fringefringe7282
@fringefringe7282 2 жыл бұрын
Marvelous.
@nikhilgoyal8340
@nikhilgoyal8340 3 жыл бұрын
Nice explanation and use case.
@eswarreddy6280
@eswarreddy6280 3 жыл бұрын
great one
@tienbui1106
@tienbui1106 3 жыл бұрын
It's pretty helpful, thanks
@vladimirgorea8714
@vladimirgorea8714 4 жыл бұрын
Ok, this is useful. Thanks
@louaykhammar7268
@louaykhammar7268 3 жыл бұрын
Thanks
@willculpepper9637
@willculpepper9637 2 жыл бұрын
1) Say what you're going to say. 2) Say it. 3) Say what you said. This is the way.
@paulchamberlain7942
@paulchamberlain7942 Ай бұрын
no rewinding if tape stopped? So unlike any tape machine ever made..
@openroomxyz
@openroomxyz 3 жыл бұрын
Love it thanks a lot!
@alexanderkyei8947
@alexanderkyei8947 3 жыл бұрын
Very great presentation👍🏿
@brookestephen
@brookestephen Жыл бұрын
Perhaps it's easier to make unavailable functions unavailable in the user interface, rather than generate an error when the user selects an unavailable function.
@lepidoptera9337
@lepidoptera9337 Жыл бұрын
The better way is to give an explanation why the function is not available and what pre-requisites the user has to provide to make it available. Yes, there is the crowd that thinks that the user is a toddler who needs to be put into a tiny cage... that crowd tends to write highly unintuitive and frustrating software that leaves no room for growth, neither for the user nor the software designer. If you want to treat your user like an adult, tell him what the program needs to be able to do more for him. If you can't do that, then you don't understand either your user nor your own software.
@chikkai2432
@chikkai2432 2 жыл бұрын
👏
@geodome83
@geodome83 3 жыл бұрын
NFA is probably the easiest way to express a state machine, but there are other kind of automata which may be used to model the state machine.
@lepidoptera9337
@lepidoptera9337 Жыл бұрын
A state machine can be written easily with if-then-else or switch statements. No need to complicate things.
@enzotriches7657
@enzotriches7657 4 жыл бұрын
amazing
@ahmednabil5119
@ahmednabil5119 3 жыл бұрын
But how does state machine library works? It checks the state (true or false) for every condition. He only abstract the code using an external library.
@rednafi
@rednafi 3 жыл бұрын
Go read the source code of the pytransitions library. It's a 20 minutes talk. What do expect? I think the speaker did a fantastic job in explaining the problem and pointing the audience in the right direction.
@lapidations
@lapidations 2 жыл бұрын
@@rednafi I agree. Even if I'm currently struggling to implement a state machine, I watched this to understand the use cases and design, not the implementation.
@yash1152
@yash1152 2 жыл бұрын
umh, yeah, but abstraction is good. It's reusable, it's maintainable, it's flexible. it's less error prone. so, even if it's abstracted, it still fits the aim of the talk. by the way, thanks for the comment (:
@lepidoptera9337
@lepidoptera9337 Жыл бұрын
@@yash1152 Abstraction for abstraction sake is a bad idea. Everybody who can touch your code understands if-then-else and switch... and almost nobody wants to read the documentation for your choice of state machine library. Moreover, you may be running into some serious performance problems with libraries that are too general for your particular use case.
@totrantien
@totrantien 3 жыл бұрын
amazing
Building Docs like Code: Continuous Integration for Documentation
29:21
Stop Writing Classes
27:29
Next Day Video
Рет қаралды 938 М.
Симбу закрыли дома?! 🔒 #симба #симбочка #арти
00:41
Симбочка Пимпочка
Рет қаралды 4,2 МЛН
ТЮРЕМЩИК В БОКСЕ! #shorts
00:58
HARD_MMA
Рет қаралды 2,5 МЛН
How To Choose Mac N Cheese Date Night.. 🧀
00:58
Jojo Sim
Рет қаралды 87 МЛН
World’s strongest WOMAN vs regular GIRLS
00:56
A4
Рет қаралды 49 МЛН
Introduction to Finite State Machine Theory
24:13
Intermation
Рет қаралды 12 М.
Что такое машина состояний - конечный автомат? (FSM) #FSM
10:27
Практическое программирование Python
Рет қаралды 8 М.
Why Good Developers Write Bad Tests
30:09
Next Day Video
Рет қаралды 3,7 М.
Understanding Finite State Machines (or  Finite-State Automaton)
16:46
Transforming Code into Beautiful, Idiomatic Python
48:51
Next Day Video
Рет қаралды 1 МЛН
David Khourshid - Infinitely Better UIs with Finite Automata
25:33
How NES Games Use State Machines For Everything
8:21
NesHacker
Рет қаралды 35 М.
ИСПОЛЬЗОВАНИЕ STATE MACHINE В ПРИЛОЖЕНИЯХ
34:31
Видео с мероприятий {speach!
Рет қаралды 12 М.
Симбу закрыли дома?! 🔒 #симба #симбочка #арти
00:41
Симбочка Пимпочка
Рет қаралды 4,2 МЛН