The first part of this series gave an overview of the key concepts and listed some of the main advantages of using functional reactive programming techniques in UI development. Future articles we will focus on different components that are involved, starting today with the State component, a key ingredient of functional reactive UI programming.
React.js, Elm, Cycle.js, and other UI frameworks introduced a new way of building user interfaces. By applying principles from functional reactive programming to UI development, they even changed how we think about user interfaces. In no time, these approaches have simply smashed the seemingly inevitable dominance of MVC and its siblings (MVP, MVVM etc.). This article, which is the first in a series, will give a brief introduction into this new way of building UIs and list some of the advantages it has over traditional approaches. These factors are so strong, that in my opinion there is a good chance that we are right now witnessing the end of the MVC-era.
Today I release an initial version of Čaj, a Java library that allows you to formulate expectations about your code in your tests.
Expectations formulated with Čaj are straightforward to read and simple to understand. Here are a few examples:
You can find out more on Čaj’s GitHub page.
Lately Carl Dea and I have started a new project to bring JavaFX 8 into the browser. Today I want to introduce the first two proof-of-concepts that we created to see if this idea is feasible at all.
During my talk “The Quantum Physics of Java” at Oredev, @holly_cummins tweeted about the beer cache hierarchy. It is an analogy with which my former colleague, Richard Thompson, came up to describe the differences between memory access times. This tweet hit a nerve with more than 1.500 Retweets and more than 900 Favorites. It also inspired quite a few people to extend the analogy to other areas. Here are some of my favorites:
In the video we talk a lot about my latest project Coffee4Java. It is a JSR 223-compliant ScriptEngine for CoffeeScript. You will find the code examples from the video with a more thorough explanation soon on this blog.
After seven years in the Czech Republic, we decided that it is time for a change and to move on. It was a great time during which I met a lot of fantastic people and experienced many wonderful and unforgettable moments. In the last month we moved to Freiburg, a beautiful city in the south-west of Germany.
Yesterday was the first day in my new job at Canoo. If you are interested in JavaFX, you have probably already heard about them. Canoo is a company that is focused on UI development with all kinds of technologies. They have been part of the JavaFX community from day one. And yes, by that I mean, Canoo is one of the few companies that has actually used JavaFX Script! 🙂
There are many reasons why I am looking forward to the new gig. It allows me to:
- work with JavaFX again and “rejoin” the JavaFX community.
- focus on all things UI: development, UX, design.
- spend more time on blogging and speaking.
- contribute to exciting Open Source initiatives, e.g. OpenDolphin, DataFX, the JavaFX ports etc.
- and last but not least I will work with great people (e.g. Dierk König, Andres Almiray, Hendrik Ebbers, and others) to create beautiful and fun-to-use front ends.
Modern web applications and the rise of mobile clients redefined what is expected from a web server. Node.js was the first technology that recognized the paradigm shift and offered a solution.
The application platform Vert.x takes some of the innovations from Node.js and makes them available on the JVM, combining fresh ideas with one of the most sophisticated and fastest runtime environments available. Vert.x comes with a set of exciting features that make it interesting for anybody developing web applications.