I use common sense at work and enjoy participating in the design process of web development as well. I strive to make websites as easy to use and navigate as possible. My primary focus is still development, though.
Rohlik.cz is a relatively new Czech startup running an electronic grocery store, delivering goods in the Czech Republic’s two largest cities, Prague and Brno. Dispatching over 1500 orders each day, the project’s codebase utilized technologies such as Elasticsearch to list products without relational database lookups, or RabbitMQ to perform various tasks asynchronously.
Faculty of Informatics, Masaryk University, Brno
Since 2016 I’ve been helping Grifart, a Brno-based company organizing medicinal congresses, rebuild their registration system so that all the processes that can be automated are automated. I have also occassionally worked on React.js front-ends, and I’ve helped set up infrastructure components like Nginx-based reverse proxy or a logging server built with the Elastic stack.
In mid-2018 I’ve started working with Smartlook, a Czech startup providing website and mobile app analytics based on visitor recordings. With PHP being only a small part of the whole cloud-based solution, I also get in touch with React and Node.js applications written in TypeScript, and I’ve got to know Docker better.
giving back to the community
The community has given me so much that it’s only natural that I give back to it whenever I can. Thus I try to help people on Nette forum, write this blog, and contribute to or even create and/or maintain a number of open source projects, including
I have given a number of talks as well:
float, swim with the floating point
They say you should understand floating-point precision by 35.0000000000014. This talk discusses how floats are (im)precise and why, demonstrates the problems you inevitably encounter when doing math with floats, and presents ways to prevent those problems by using more proper data types and structures.
AJAX (and front-end) in Nette, the simple and modern way
This talk brings a practical example of how to use Naja to implement AJAX in a Nette Framework application. On top of that, it touches related topics of the front-end development ecosystem in 2019, namely Webpack and its integration into Nette Framework.
Naja: thin, modern AJAX library for Nette
A year and a half after I had introduced first public release of Naja, a tiny AJAX library for Nette Framework, this talk gives a recap of what the library can and cannot do, and provides a sneak peek into its future.
The frameworkless application
The activities of PHP communities made it possible to build robust applications, uniquely composed of little bits, without relying on a big framework. This talk discusses how they work and if they are a good approach.
Editor-based HTTP client in PHPStorm
This very short demo introduces the editor-based HTTP client in PhpStorm (or other JetBrains IDEs) and its capabilities, especially using response handler scripts to test a chain of successive requests.
How to write even thinner APIs in PHP
In a previous talk about HTTP APIs in PHP, I showed a middleware-based approach using Slim Framework. A year later, this talk discusses what's new and how APIs can be written even thinner without any framework at all, utilizing PSR-15 interfaces.
Message queues: Leave the hard work for later
This talk is basically a message queues 101. It introduces the concept of message queues, discusses when and how they are useful, and talks about various message queue implementations and their bindings to both vanilla PHP and some of the most popular PHP frameworks.
Tick tock, goes the clock
Pretty much every web application needs to work with date and time values. Time is, however, a tricky thing and there are many challenging issues one has to remember. This talk discusses them and tries to aid people towards bulletproof datetime handling.
Naja: modern AJAX library for Nette Framework
When I needed an AJAX library for Nette Framework, nette.ajax.js had unnecessary dependencies (jQuery) and nittro was too complex. Naja comes inbetween: it is a simple modern library, but at the same time it’s easily extensible for any use case.
Writing truly slim APIs in Nette Framework
Writing APIs using Nette Framework’s presenters can easily lead to bloated code and badly distributed responsibilites. This talk shows a different approach using Slim Framework, PSR-7 and middlewares, wired into Nette DI container to allow reuse of services.
Webpack ♥ Nette Framework
File upload for the 21st century
Handling large amounts of file uploads is quite a challenge for both ends of web development. This talk shows a solution using pure HTML5 awesomeness on the front-end and Nginx’s efficient upload module on the back-end.
Also I contribute to the PHP docs, mainly helping to keep it up-to-date with new features: