What is DDD Scotland?
DDD Scotland is a free conference for developers to sink their teeth into and learn lots of fantastic information provided by various talks and events throughout the day lead by people that, more often than not, work in the industry as a developer.
The event was organised by a fantastic team of people from Scottish Devs, who done an amazing job of making sure that the event went smoothly.
Sessions that I have attended:
Overall, the sessions were good and in a high standard, with some interesting aspects of either new technologies or inspiring ideas. Below I'll list the sessions takeaway (from my understanding).
- Think about containers as of making a cake. You'll start by adding layers of chocolate, base etc… Similar to containers, you'd add the necessary layers to make your application packaged based on what you need instead of digging into complicated and unwanted layers.
- You have to understand what are the differences between an Image, DockerFile, and Registry, once those understood, you'll be able to plan and architecture your deployment strategy including what to package.
- Any can start containerize their application whether it is a legacy application or green field project. As it is will not matter what the implementation is, it'll still be deployable as long as configurations are done correctly.
- Visual Studio – comes with inbuilt Docker creation, were you can click a button and DockerFile is generated with the initial configuration that can be deployable anytime.
- Mesos, Kubernetes, swarm and others are used for orchestrating your container for application deployment.
- Avoid using Kubernetes or any other orchestration tools for your project. Start simple and then use the necessary tools as you go along with the deployment of your application.
- Docker Compose – is handy for new startup projects, but once we want to scale up then we need to use other tools such as Kubernetes.
- With different tools and capabilities, for example image recognition, voice recognition and others have made a huge transformation in AI. Companies such as Tesla have used AI to self-drive their cars.
- A lot of investment been focused on AI specifically Autonomous control systems
- Another transformation been made in cognition and problem solving. With the use of Machine Learning, machines are capable of beaten humans in problem solving or even through gaming.
- ML is improving over the years to provide superior capabilities for our use.
- This is an interesting read:
- This talk was focused on React.js on why to use reactjs and how they have gone through implementing it, also discussed some of the available features that can be used in react.js.
- Slides are here: http://ddd18.paulaikman.co.uk/#/
- This talk was very interesting, in which Gary presented the concept of instead of return JSON format when an API is called, return HTML5 in which it has far more support when it comes to forms, hypermedia and versioning.
- One of the suggestion was that, with HTML5 now we have a better parsing libraries and well-defined structure, once you add the microdata and appropriate metadata you can potentially cover what you get out of JSON.
- An example, GitHub uses HTML5 for their APIs instead of JSON format.
- Understanding the Domain Knowledge of your application is highly important.
- The slides: https://github.com/garyfleming/apis-for-decades/releases/tag/v0.3
- 1The talk was primarily focused on Kotlin programming language. With Kotlin you can build applications for web applications, JVM, Android and native. The language is well supported as its been integrated with Intellij IDEA, Android Studio, Eclipse or through standalone compiler.
- 2Personal observation, I found Kotlin is a mix between Java, SWIFT and C#. Most of the parameters, declarations, initializations etc.. are common between these languages.
- 3To learn more about the language: https://kotlinlang.org/
- I was expecting the talk to be more advanced as I was looking forward to use NodeJS as a background processor and the ability to spin-off multiple instances to do multiple tasks in parallel.
- The talk was talking about the basics of NodeJS, and how to manage and maintain npm packages.
- The only takeaway was that you can add a binary to the path using the package JSON instead of manually doing it through the terminal/command line. For example,
- Chocolatey is a Windows based packaging application, that you can package your executable application and deploy it to your clients. For instance, packaging and deploying Symphony application to all of our machines. That can be done with Chocolatey. Packages can be installed through powershell or command line.
- The Slides: https://gitpitch.com/gep13/ChocolateyDemos/dddscot#/