sebastiandaschner news


monday, may 02, 2022

Hello and welcome to my newsletter!

I hope you’re doing well where ever you are. I’m writing this newsletter sitting in the beautiful city of Vienna. For me, there is still not much business-related travel and mostly I’m focusing on client projects, workshops, and creating content. There are a few more pieces of content and courses on Quarkus and effective testing that I’ll put out soon, and I’m about to finish my developer productivity video course, which means that the early-bird discount will end soon, just as a reminder. All its episodes are already recorded and I’m looking forward to finally release it in full.

Let’s have a look what new things there are this time:

 

What’s new

 

8 Tips and Experiences on Neo4j With Java

I’ve collected my main 8 tips and experiences that I’ve learned over the years while using Neo4j OGM with Java in real-world projects, that I’ve put together in an explanatory video:

  • For a node entity, define a proper domain ID or use UUID

  • Be aware of MATCH / MERGE

  • Try out your queries in Neo4j’s Graph Browser

  • Make use of OGM’s auto mapping

  • For refactorings / graph changes use APOC

  • Consider date / time types

  • Have “multi-tenancy” in mind

  • Have your production schema and indexes in mind

Some of these points might not sound very obvious at the first read, and if this topic might help you, have a look at this video.

 

Updates on Neo4j OGM with Quarkus

There have been some updates with regards to Neo4j OGM and Quarkus, that I summarized in the following video. Neo4j’s Michael Simons has released a Quarkus Extension that will make you’re life a bit easier if you’re using Neo4j OGM with quarkus.

I’ve had a longer interview with Michael that is available on YouTube in which he explains the underlying mechanisms, technical challenges, and future direction of Neo4j in the Java world. I found this conversation very interesting.

As for the extension, you can add the following dependency in your Maven build, which will add the required Neo4j dependencies, and also configure your OGM SessionFactory so that you don’t have to construct it yourself. The SessionFactory is then already available for injection.

<dependency>
    <groupId>eu.michael-simons.neo4j</groupId>
    <artifactId>neo4j-ogm-quarkus</artifactId>
    <version>1.1.0</version>
</dependency>

For a more detailed explanation, have a look at this video.

 

Learning 12 New IDE Shortcuts: Effective Developer Challenge

This is a reminder of my #effectivedeveloper challenge that I’ve started in the beginning of 2022, to make you learn one new IDE keyboard shortcut every month. Well, ideally you can learn more but this aims to spark some inspiration and maybe you’ll learn something. Since there won’t be any exams at the end of the year — though that would be fun too — you can still join us:

Through the year, I’ll add to the following Twitter thread.

So far we have:

  • Jan: Assigning variables with Ctrl+Alt+V (⌃ ⌥ V on Mac), as well as method parameters (P), fields (F), or constants (C)

  • Feb: Code navigation with Ctrl+B to go to declaration / usage (Mac: ⌘ B), Ctrl+Alt+B to go to derived symbols / impls (⌥ ⌘ B), and Ctrl+U to go to super method (⌃ U)

  • Mar: Jumping to errors (or warnings) in our source files with F2 for the next code issue, and Shift+F2 for the previous code issue

  • Apr: Complete current statement with Ctrl+Shift+Enter (⇧ ⌘ ⏎), which includes all trailing symbols and moves the caret

  • May: Show Context Actions (aka "cure-all fix") with Alt+Enter, an action for suggestions, code improvements, imports, or fixing errors

Happy shortcut learning and watch the following Twitter thread for more updates.

 

Thanks a lot for reading and see you next time!

 

Did you like the content? You can subscribe to the newsletter for free: