Deprecated: Creation of dynamic property Markdown_Shortcode_Plugin::$cache is deprecated in /var/www/0/138308/www/wp-content/plugins/markdown-shortcode/markdown-shortcode.php on line 25

Warning: Cannot modify header information - headers already sent by (output started at /var/www/0/138308/www/wp-content/plugins/markdown-shortcode/markdown-shortcode.php:25) in /var/www/0/138308/www/wp-includes/rest-api/class-wp-rest-server.php on line 1831

Warning: Cannot modify header information - headers already sent by (output started at /var/www/0/138308/www/wp-content/plugins/markdown-shortcode/markdown-shortcode.php:25) in /var/www/0/138308/www/wp-includes/rest-api/class-wp-rest-server.php on line 1831

Warning: Cannot modify header information - headers already sent by (output started at /var/www/0/138308/www/wp-content/plugins/markdown-shortcode/markdown-shortcode.php:25) in /var/www/0/138308/www/wp-includes/rest-api/class-wp-rest-server.php on line 1831

Warning: Cannot modify header information - headers already sent by (output started at /var/www/0/138308/www/wp-content/plugins/markdown-shortcode/markdown-shortcode.php:25) in /var/www/0/138308/www/wp-includes/rest-api/class-wp-rest-server.php on line 1831

Warning: Cannot modify header information - headers already sent by (output started at /var/www/0/138308/www/wp-content/plugins/markdown-shortcode/markdown-shortcode.php:25) in /var/www/0/138308/www/wp-includes/rest-api/class-wp-rest-server.php on line 1831

Warning: Cannot modify header information - headers already sent by (output started at /var/www/0/138308/www/wp-content/plugins/markdown-shortcode/markdown-shortcode.php:25) in /var/www/0/138308/www/wp-includes/rest-api/class-wp-rest-server.php on line 1831

Warning: Cannot modify header information - headers already sent by (output started at /var/www/0/138308/www/wp-content/plugins/markdown-shortcode/markdown-shortcode.php:25) in /var/www/0/138308/www/wp-includes/rest-api/class-wp-rest-server.php on line 1831

Warning: Cannot modify header information - headers already sent by (output started at /var/www/0/138308/www/wp-content/plugins/markdown-shortcode/markdown-shortcode.php:25) in /var/www/0/138308/www/wp-includes/rest-api/class-wp-rest-server.php on line 1831
{"id":67,"date":"2017-01-08T11:26:17","date_gmt":"2017-01-08T09:26:17","guid":{"rendered":"https:\/\/edvin.town\/?p=67"},"modified":"2022-03-16T16:10:10","modified_gmt":"2022-03-16T14:10:10","slug":"live-hacking-with-tornadofx","status":"publish","type":"post","link":"https:\/\/edvin.town\/live-hacking-with-tornadofx\/","title":{"rendered":"Live hacking with TornadoFX"},"content":{"rendered":"

As we continue to work on the TornadoFX Guide<\/a> it’s becoming clear that some things are hard to describe well in the documentation format. We’ve come up with a process where someone writes a small app and then I try to react live to that code with the purpose of explaining best practices or simply how to use more of the features of TornadoFX.<\/p>\n

It’s important to note that there is no right way with TornadoFX. There is only your way. Many frameworks dictate a workflow for you, and you’re more or less forced to walk that exact path. This is often enforced in the form of interfaces you need to implement to access certain functionality. TornadoFX gives you more freedom to express yourself in your own way. Some like imperative style, others like to be more declarative.<\/p>\n

Yesterday we did another React Video in this format, the result is below: <\/p>\n