2/21/19

Microsoft Quantum Lab on TU Delft campus opened by Dutch King

"On 21 February, King Willem Alexander opened the Microsoft Quantum Lab on the campus of TU Delft. With the lab, Microsoft strengthens quantum research in Delft, a research area where TU Delft ranks among the world's best. The QuTech Research Institute, a collaboration between TU Delft and TNO, is working with industry on the development of quantum computers and a quantum internet. Microsoft, which now has its own laboratory in Delft, is one of the most important companies that collaborates intensively with Delft quantum researchers."

Source: https://www.tudelft.nl/en/2019/tu-delft/dutch-king-opens-microsoft-quantum-lab-on-tu-delft-campus/

Further reading

More on the Microsoft Quantum Lab Delft: https://www.microsoft.com/en-us/research/group/microsoft-quantum-delft/

Do you want to know a bit more on Quantum Computing? Read my short intro and links to practical resources in https://hansrontheweb.blogspot.com/2018/11/quantum-computing-introduction.html.

Wednesday Evening Training on Quantum Computing

Capgemini regularly organizes #WednesdayEveningTraining workshops on Quantum Computing. Read more on these sessions in this blog: https://hansrontheweb.blogspot.com/search?q=quantum

2/20/19

Week #8's Wednesday Evening Training: Quantum Computing, a practical introduction using IBM technology (part 4)

Continuing our exploration of Quantum Computing, guided by one of our Quantum Computer champions: Ilyas Sener. We had a little recap of Quantum logic gates, math topics and an inspiring brainstorm on topics for our upcoming Wednesday Evening Trainings on Quantum Computing.





Further reading

Do you want to read more on the topics in this post? Take a look at my post: "Quantum computing: an introduction and a lot of links to resources":
https://hansrontheweb.blogspot.com/2018/11/quantum-computing-introduction.html

Past Wednesday Evening Trainings on all topics

You 'll find post of previous sessions on my blog and on LinkedIn: https://www.linkedin.com/search/results/content/?keywords=%23wednesdayeveningtraining

Work @Capgemini?

Do you want to join us? We're always looking for and well-motivated young professionals. Do you have a bachelor or master degree or extensive practical experience? Or do you have a relevant ICT / Informatics training and you have become curious about us? Please send me an email. Working for us gives you access to all Wednesday Evening Trainings!

Week #7's Wednesday Evening Training: Real world Docker for developers, part 2

Fast and easy scaling is very important nowadays. You need to respond fast to increasing load and you may want to downscale when possible, decreasing running costs. Virtualization is an effective approach to this. Applying virtualization, you actually use your bare metal infrastructure as Host Machines to run software applications (Virtual Machines) that emulate physical machines (Guest Machines). Virtual Machines use Images (files) of completely installed and configured machines (OS and the applications you want to use) to start a Guest Machine. The Virtual Machines themselves are managed (start/pause/resume/stop/...) by so called Hypervisors. Virtualization drastically increases the speed and ease in which you can scale your server infrastructure, but the required emulation and big image files poses a rather expensive overhead.



Containerization

In Containerization, like Docker does, software (the applications you want to use) is not emulated, but is run directly on the hard hardware of the host machine in separate Container Runtimes (in short: Containers). Container Runtimes are based on Docker images which contain definitions of the software and configuration you want to run in your Container Runtimes. This Containerization approach decreases the overhead drastically compared to Virtualization, increasing the advantage of fast and easy scaling.

This evenings' topics

This Wednesday Evening Training, we continued our exploration of Docker with a deep dive into the Docker technology. Two of our Docker champions, Tim Schadenberg and Robert Swier, gave us an excellent explanation on various Docker topics and on containerization in general. 

On security, for example, the Container Breakout Vulnerability was also discussed. This vulnerability allows a malicious container to gain root-level code execution on the host. We also discussed software deployment strategies using containers, managing containers and using containers combined with Kubernetes (container orchestration) in a microservice architecture.
Since the handson labs were based on Java Spring Boot our .NET colleagues got an intro on this as a bonus :).

An excellent Wednesday Evening Training with a lot of content, a lot of discussion and much to little time! All the more reason to organize a follow-up session quickly!

Thanks Tim & Robert, for sharing your knowledge and experience with us!




Further reading

Do you want to read more on the topics in this post or play around with the technology? Here are some links…

Docker (official website): https://www.docker.com
Docker (software), a nice intro on Wikipedia: https://en.wikipedia.org/wiki/Docker_(software)
Play with Docker classroom: https://training.play-with-docker.com/
Play with Docker classroom (specific topics): https://training.play-with-docker.com/alacart
Play with Docker - A simple, interactive and fun playground to learn Docker: https://labs.play-with-docker.com/
Bart van Beek's Docker examples (GitHub repo): https://github.com/babeek94122/wet-demo-docker
Deploy on Kubernetes: https://docs.docker.com/docker-for-mac/kubernetes/
Virtualization: https://en.wikipedia.org/wiki/Virtualization
Example Docker Compose app: https://github.com/dockersamples/example-voting-app

Past Wednesday Evening Trainings on all topics

You 'll find post of previous sessions on my blog and on LinkedIn: https://www.linkedin.com/search/results/content/?keywords=%23wednesdayeveningtraining

Work @Capgemini?

Do you want to join us? We're always looking for and well-motivated young professionals. Do you have a bachelor or master degree or extensive practical experience? Or do you have a relevant ICT / Informatics training and you have become curious about us? Please send me an email. Working for us gives you access to all Wednesday Evening Trainings!

2/9/19

Week #6's Wednesday Evening Training: A practical introduction to C# code reviewing

Reviewing code requires to have a fresh and different view on (your colleague’s) code. You need to look for bad practices, think out of the box, follow your gut feeling, know about best and bad practices. You need to find a balance between advising about improvements and flat out rejecting code.

This Wednesday Evening Training, we had a practical overview and deep dive into code reviewing. One of our C# champions, Bart Roozendaal, showed us what we can look for specifically in code.

What to look for when reviewing code?

You can take a look at the general structure, tidiness, common errors, code smells and easy to find things. And there is a lot of checks and examples to be found on the internet as well. But what is also important is to view your code from particular viewpoints like security, efficiency and exception handling (error handling). It is definitely worth thinking out of the (language) box when developing a software program. Especially if your code is part of a much larger whole. And that is increasingly the case nowadays.



This evening was all about sharing experiences and opinions. There is no definite right or wrong, there are only considerations that you should make in a sensible manner. For example; there are multiple strategies to choose from when handling errors. How far do you have to go to catch errors in the code? This depends, for example, on the purpose of the program and the damage that specific errors can cause.

We did a walk through of  an existing C# solution and discussed the different findings. Very educative. The code was written in C #, but that was certainly no problem for Java engineers.

During the walk through we also discussed tooling that you can use for testing your software. See the links below for some of the tools we discussed.

To be continued...

We will certainly organize follow-up sessions on this topic. Next time, participants are invited to bring their own code to have reviewed, or bring interesting samples found. The Wednesday Evening Trainings are all about sharing knowledge and experience and learning from each other.

Thanks Bart for sharing your knowledge and experience with us!



Further reading

Do you want to read more on the topics in this post? Here are some links…

List of tools for static code analysis: https://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis
CodeMaid - An open source Visual Studio extension to cleanup and simplify C#, C++, F#, VB, PHP, PowerShell, R, JSON, XAML, XML, ASP, HTML, CSS, LESS, SCSS, JavaScript and TypeScript coding: http://www.codemaid.net/
NCrunch - An automated concurrent testing tool for Visual Studio: https://www.ncrunch.net/

Past Wednesday Evening Trainings on all topics

You 'll find post of previous sessions on my blog and on LinkedIn: https://www.linkedin.com/search/results/content/?keywords=%23wednesdayeveningtraining

Work at Capgemini?

Do you want to join us? We're always looking for and well-motivated young professionals. Do you have a bachelor or master degree or extensive practical experience? Or do you have a relevant ICT / Informatics training and you have become curious about us? Please send me an email. Working for us gives you access to all Wednesday Evening Trainings!

2/1/19

Week #5's Wednesday Evening Training: An update on DevonFW and getting started with a hands on lab

In 3 years DevonFW has grown from an Angular and a Java framework to the full fledge, fully open sourced, standard software development platform for our Capgemini Europe SBU with software stacks and accelerators for almost all current software stacks, full life cycle support and a new distributed project delivery model.

This Wednesday Evening Training, our DevonFW champions Maurice Driessen and Gudmund Aasgaard, gave us a nice overview and update on DevonFW. We were given an overview of the current assets and a nice demo and walkthrough of a DevonFW project.

Furthermore, a hands on lab was available in which we could create your own basic application using DevonFW. We also had an interesting discussion on the application of patterns in which several core patterns in a Microservices architecture were discussed.

Interesting technology! We'll definitely organize more Wednesday Evening Training sessions on DevonFW!


Further reading

Do you want to read more on the topics in this post? Here are some links…

Getting started: what is devonfw: https://github.com/devonfw/devon/wiki/getting-started-what-is-devonfw
Why devonfw? https://oasp.github.io



Past Wednesday Evening Trainings on all topics

You 'll find post of previous sessions on my blog and on LinkedIn: https://www.linkedin.com/search/results/content/?keywords=%23wednesdayeveningtraining