About

cropped-cropped-img_97312.png

Welcome To Dazzle Zone!

Thank you for dropping by and I hope you enjoy the content on this site or find something helpful.

What Is Dazzle Zone?

Dazzle Zone is a site focused on the key principles of designing and constructing user interfaces (UI) and user experience (UX) for front-end applications. While applications are the main concern, the basic concepts and techniques discussed here apply just as meaningfully to web site development.

As many topics relating to UI/UX as possible will be posted here with a frequency of (hopefully) one every fortnight or so, depending on my availability.

Why Dazzle Zone?

I have worked in front-end application development for many years and, for me, it has always been a very satisfying and pleasant experience.  However, I am very well aware that not everyone either enjoys building user interfaces, has learned the knowledge and skills to do it effectively or is confident that they are even capable of doing it at all (especially if you are someone who can type at 1000 words per minute, love the command line and spend most of your time dealing with back-end infrastructure!).

There are also talented and experienced front-end developers who are already more than capable of designing great UIs but who can be taken to the “next level” and enhance their career prospects.

Fortunately, my experience and study has enabled me to unlock the secrets to making UI/UX development as simple and as effective as possible and has taught me that basically anyone can learn to how to build great UIs by learning just a handful of straightforward guidelines and principles.

Teaching those guidelines and principles is the main motivation to create this blog.  And as the title page states, I would love for you to be able to release amazing products, attract loyal fans and change the world!

What Is The “Dazzle Factor”?

Learning how to build great UIs and mastering the techniques is really just the starting point.  With Dazzle Zone, I aim to explain how to inject what I call the “Dazzle Factor” into your interfaces so that they look as modern as possible, are a sheer delight to use and stand-out from the crowd of competing applications.

It’s amazing how much first impressions count when potential customers (or your boss) initially engage with your application and its user interface.  When your application literally “dazzles”, you have a major competitive advantage, even if the “beholder” has no conscious understanding of why they just love the way your software looks and behaves.

How Is The “Dazzle Factor” Achieved?

This is an excellent question.  As I said, building a form (for example) is one thing but making it “dazzle” is another thing altogether and it seems that relatively few developers even bother to try.

I will explain over the series of posts on this site how the Dazzle Factor is achieved, but it mainly comes down to a few things:

  1. Using the right tools and UI toolkits.
  2. Knowing the features to add & how to add them to achieve a dazzling UI.
  3. Knowing how much “dazzle” is enough and not overdoing it.

Will There Be Code Samples?

Absolutely!  Explaining concepts is important but nothing beats actual code and examples in facilitating anyone to gain or master the skills involved.

Therefore, wherever possible, fully-working code samples will be provided along with videos demonstrating techniques etc. (where appropriate).  And all of the code samples will be ABSOLUTELY LICENSE FREE meaning you can do anything you like with them.  By all means, copy them, modify them and include them in your applications if you so desire.

Three graphics toolkits will be used for code samples, namely JavaFX, Unity & Qt to cover a broad range of applications and use cases.

Why JavaFX?

JavaFX_Logo

JavaFX is a modern, hardware accelerated graphics toolkit that can be programmed using any JVM-based language.  This means that at least 11 million developers worldwide already have the skill set to use it.  While my “staple diet” is the Java language itself, I will be sure to include samples in other JVM languages especially Kotlin (because of its adoption by Google for Android development).

There are numerous other reasons why I have chosen JavaFX for code samples:

  • JavaFX is very rich in features.
  • JavaFX has an excellent GUI Builder tool named Scene Builder which is often critical in streamlining UI development.
  • JavaFX provides a declarative format for defining UIs (FXML) but this is optional and imperative programming is also well supported.
  • JavaFX enables simple and powerful customisation of controls using CSS which is not only a rather ubiquitous language but also great for proper “separation of concerns”.
  • JavaFX runs well on Windows, Linux, MacOS, iOS and Android as it is based on the open-source OpenJFX project and the excellent additional ports and tools provided by companies such as Gluon.
  • The JavaFX community is vibrant, passionate, highly talented and very approachable and helpful if you get stuck.
  • There is a very large number of awesome 3rd-party libraries that add huge value to the JavaFX ecosystem.

Why Unity?

1280px-Unity_Technologies_logo.svg

Unity is the world’s premier game engine and can be used to create everything from AAA games to enterprise apps as well. It has features which can be utilised to dazzle so much your eyes and ears will never be the same again!

These are the main features of Unity that make it suitable for code samples:

  • Unity games & apps run on almost every conceivable device from PCs/workstations to mobiles & tablets and all the way to popular gaming consoles like Xbox and PS4.
  • Unity has the capabilities to build not just games but also Automotive, Transportation & Manufacturing apps, Film, Animation & Cinematics along with Architecture, Engineering & Construction apps.
  • The Unity Editor is a powerful IDE that comprises scene and games views, asset management and configuration.
  • Unity has an Asset Store with literally thousands of pre-built assets that you can purchase and/or use in your own games or apps.
  • Unity has a variety of project types including 2D & 3D along with a High Definition Rendering Pipeline and a Universal Rendering Pipeline (particularly suited to lower-end devices).
  • Unity has an expansive & dynamic community of creators and developers.
  • Unity education & training is comprehensive with a plethora of online courses available, especially those by Jonathan Weinberger.

GameDevHQ_-_Horizontal

  • Jonathan is a co-founder of GameDevHQ which provides multiple courses, articles and their awesome Unity Plugin named Filebase.  Click here to view GameDevHQ membership plans and go Pro to get a huge amount of Unity content including thousands of game-ready assets, over 100+ hours of educational material and exclusive courses and coding challenges!

Why Qt?

a15b0657038c1da731748a27feb4168e

Qt is a modern, hardware accelerated graphics toolkit that can be used to create a very wide range of apps ranging from UIs for small, embedded devices to complex 3D visualisations & games. It uses C++ as the primary programming language, JavaScript for scripting and is highly performant.

These are the main features of Qt that make it suitable for code samples:

  • Qt has been actively developed for 25+ years so it is very mature.
  • Qt has a vast library of functions that extend and complement the C++ language.
  • Qt provides a declarative format for defining UIs (QML) but this is optional and imperative programming is also well supported.
  • Qt comes with its own powerful IDE known as Qt Creator which allows visual development along with QML & C++ editing.
  • Qt is backed commercially by The Qt Company and has a user base in excess of 1M developers.
  • Qt is equally at home with 2D apps as it is with 3D apps and includes a Qt 3D Studio to render and interact with 3D scenes.

What Else Can You Expect?

Along with regular articles focusing on one aspect of UI/UX there will be a weekly post titled “The Weekly Dazzle” that will feature all the major news and highlights from the ecosystems of JavaFX, Unity and Qt with lots of useful links.

If I miss anything, please use the Contact page to give me a heads-up and I will be sure to include the content in the following week’s update.

Who Am I?

My name is John-Val Rose and I am the Chief Scientist/Architect at Rosethorn Technology.  I have extensive experience with both Java & JavaFX along with the JVM itself for many years along with experience using both Qt and Unity.  I have worked on UIs ranging from extremely simple form-based applications to full-blown “dazzling” UIs which include effects and animations.

I am on Twitter as @Rosethornian and also on Facebook.

Follow @DazzleZone on Twitter for announcements related to this blog.

All posts here reflect my own personal views and opinions.

N.B. Out of respect for the well-known JVM architect named “John Rose” who works for Oracle, I would like to make it clear that I always refer to myself as “John-Val Rose” and that this blog is the work of someone completely unrelated to him.

DC1E245B-44A7-4354-BFCB-D8E6DFB22783
Rosethorn_logo_700
autism

That “ribbon” is not part of the Rosethorn Technology logo.  It’s the universal symbol for the Autistic Spectrum Disorder (The only problem with that link is that it is to a site about Mental Illness).

Autism is NOT a Mental Illness.

I love that word “spectrum”.  Have you ever seen one?  It’s like a rainbow.

Here’s how a spectrum can be produced (white light passing through a prism):

spectrum

 

So personally, I like to see Autism as the “white light”, society as the “prism” and the beautiful colours of the “spectrum” representing the variety of Autistic people.

I hope these thoughts help anyone else reading this who may also be Autistic.

2 Comments on “About

  1. Pingback: JavaFX – Time To Dazzle! – Dazzle Zone

  2. Pingback: Dazzle Zone 2.0 Is Here – Now With Extra Dazzle! – Dazzle Zone

%d bloggers like this: