Senior Lecturer in Game Development at the University of Brighton. Author of #FXGL game engine. #Java #JavaFX #Kotlin open sourcerer. PhD in Computer Science.
Many alternatives are available to configure your Spring app.
I’d like to list them in this post, leaving Spring Boot out of the picture on purpose.
Some, if not most, of our judgments regarding technology stacks come either from third-party opinions or previous experiences. Yet, we seem to be adamant about them!
- Use Cases
I see tremendous potential for Deep Netts in the drug discovery pipeline and I feel it is necessary to share Deep Netts existence with the scientific community.
As a Java developer, I have especially come to appreciate having a tool in my language that I could immediately use out of the box and not have to add on weeks, or even months, of training in order to become proficient in another language.
The JVM automatically releases objects from memory when they are not needed anymore. This process is known as Garbage Collection.
In languages with no GC, developers have to take care of releasing objects. With legacy languages and within big codebases, releasing was not applied consistently, and bugs found their way in production.
As the ecosystem around the JVM is well developed, it makes sense to develop applications using the JVM and delegate the most memory-sensitive parts to Rust.
Although a lot of universities and high schools focus on Python and C# in their program, there are luckily a lot of others who go “full Java”.
Don’t get me wrong, I definitely don’t want to start a “programming-languages-war”, but Java is the language I used myself more than any other for the last 10 years.
Setting up a new project or building a proof-of-concept for a new idea, is a matter of hours. And there is always a solution for the problem I need to solve.
This is probably true for each developer who has enough experience in the language used the most. But having used and experimented with many other languages, I still keep returning to my “one true love”, being Java, as it always delivers the result I’m aiming for, with the right amount of code to be readable, understandable, and testable!
PostgreSQL’s protocol is currently at version 3, and there are concerns about improving the protocol in this regard.
The V4 wire protocol changes and the wanted features for V4 documents share concerns about version 4 with pipelining and multiplexing in mind. PostgreSQL also has a proposed feature called Protocol hooks that decouples PostgreSQL from the current protocol. It aims to provide extensibility of the wire protocol. Such a feature could be an enabler for multiplexing.
It took 25 years to deliver HTTP/2 and introduce multiplexing to increase performance drastically. Most database protocols have not followed the same path yet and remain in the stone age of connection pooling (at least databases with an openly documented protocol).
Multiplexed database protocols could improve performance, and make connection pools a thing of the past. It would also provide the foundation for efficient data streaming from databases.
BlockHound will transparently instrument the JVM classes and intercept blocking calls (e.g., IO) if they are performed from threads marked as “non-blocking operations only” (ie. threads implementing Reactor’s NonBlocking marker interface, like those started by Schedulers.parallel()).
If and when this happens (but remember, this should never happen!), an error will be thrown.
In order for any technology to grow and improve, community support and feedback are paramount.
To get a general idea of what the community would like to see in JavaFX in the future, I have asked developers to share their thoughts. The collated results are given below.
Each entry also includes links to open-source libraries and other resources that may provide (or help develop) some of the necessary functionalities.
Time-traveling cyborgs and robots that are able to love. These interesting and romantic ideas emerged from the imagination of Hollywood film directors.
Nevertheless, many people are afraid of Artificial Intelligence (AI). This also can be seen in the economic world.
Small and medium-sized enterprises (SMEs), in particular, see AI as a threat to their own business. Surprisingly however, all different-sized companies are able to see the potential of AI when it comes to penetrating the national and global market.
Kotlin offers many exciting features.
In general, developers tend to cite null safety as their favorite. For me, it’s function extensions. But delegation comes a close second.
The delegate pattern is ubiquitous in the Object-Oriented Programming world. Some languages, such as Kotlin, provides a native implementation.
But delegation doesn’t stop at the class level. Kotlin does provide delegation at the property level. It provides some out-of-the-box delegates, but you can easily create your own.
Java developers are particularly spoiled when using Hazelcast. Because Hazelcast is developed in Java, it’s available as a JAR, and we can integrate it as a library in our application.
Just add it to the application’s classpath, start a node, and we’re good to go. However, I believe that once you start relying on Hazelcast as a critical infrastructure component, embedding limits your options. In this post, I’d like to dive a bit deeper into the subject.