Als developer word je al snel geconfronteerd met verschillende projecten.
Voor je het weet word je laptop een labyrinth met testinstallaties, demonstraties, development kopieën van belangrijke projecten,...
Sommige projecten gooi je weg, maar je vergeet de vhost configuratie te verwijderen.
See: http://www.drupalcampgent.be/nl/forum/een-goede-dev-omgeving-opzetten
A quickstart guide to your first Glassfish process which:
* Accepts input as webservice
* Writes data to a file on local harddisk
* Return a value to the calling webservice.
Als developer word je al snel geconfronteerd met verschillende projecten.
Voor je het weet word je laptop een labyrinth met testinstallaties, demonstraties, development kopieën van belangrijke projecten,...
Sommige projecten gooi je weg, maar je vergeet de vhost configuratie te verwijderen.
See: http://www.drupalcampgent.be/nl/forum/een-goede-dev-omgeving-opzetten
A quickstart guide to your first Glassfish process which:
* Accepts input as webservice
* Writes data to a file on local harddisk
* Return a value to the calling webservice.
Techdays 2013 NL - Serious Request met Windows AzureMichaël Hompus
Bijna iedereen in Nederland kent de Serious Request actie van 3FM en het Nederlands Rode Kruis. Wat weinig mensen weten is dat de afgelopen 2 edities voor een belangrijk deel op Windows Azure draaide. In deze presentatie wordt de architectuur achter de oplossing toegelicht, welke Azure componenten er gebruikt zijn. Wat we geleerd hebben van de eerste editie, wat we daarom aanpast hebben voor de tweede editie, en wat er nog meer mogelijk was omdat het Windows Azure platform zich in de tussentijd ook verder ontwikkeld heeft. Ook worden er veel ervaringen gedeeld waar je als ontwikkelaar tegen aan kan lopen bij het opzetten van een Windows Azure oplossing.
Hoe releasen minder pijnlijk werd bij de ANWB AlarmcentraleJeroen Reijn
Continuous Delivery wordt vaak geassocieerd met een snellere time-to-market, maar wat als dat niet je voornaamste probleem is? Een aantal jaar geleden heeft de ANWB besloten om zich van een traditionele enterprise organisatie te transformeren naar een Agile organisatie. Bij de afdeling Hulpverlening zijn wij met drie teams bezig met het ontwikkelen van het nieuwe case managementsysteem voor de ANWB Alarmcentrale. Als onderdeel van onze agile werkwijze maakten wij een release en rolden wij deze uit aan het eind van onze 2 wekelijkse sprints. Dit leverde ons regelmatig verschillende problemen op en halverwege 2016 besloten we dat het anders moest. We hebben toen een beweging ingezet richting Continuous Delivery. In deze presentatie zullen we ingaan op de uitdagingen die we hadden, hoe we die hebben aangepakt, en op een aantal onverwachte voordelen.
Niet onderhoudbare software in 10 makkelijke stappenRick Beerendonk
Ontwikkelde software eindigt vaker dan ons lief is in moeilijk te onderhouden code en een minder productieve organisatie. Ondanks goede intenties blijken simpele wensen moeilijker te implementeren dan nodig. Er ontstaan meer problemen dan verwacht. In het begin ging het allemaal nog zo snel, makkelijk en foutloos. Waar ging het mis? In deze sessie gaan we die vraag beantwoorden door onderscheid te maken tussen wat makkelijk lijkt en wat eenvoudig is. We behandelen bewezen technieken alsmede veelbelovende ontwikkelingen. Uiteraard kijken we verder dan het coderen, want software ontwikkeling blijft mensenwerk.
Hoe releasen minder pijnlijk werd bij de ANWB AlarmcentraleSjoerd Hemminga
Continuous Delivery wordt vaak geassocieerd met een snellere time-to-market, maar wat als dat niet je voornaamste probleem is? Een aantal jaar geleden heeft de ANWB besloten om zich van een traditionele enterprise organisatie te transformeren naar een Agile organisatie. Bij de afdeling Hulpverlening zijn wij met drie teams bezig met het ontwikkelen van het nieuwe case-managementsysteem voor de ANWB Alarmcentrale. Als onderdeel van onze agile werkwijze maakten wij een release en rolden wij deze uit aan het eind van onze tweewekelijkse sprints. Dit leverde ons regelmatig verschillende problemen op en halverwege 2016 besloten we dat het anders moest. We hebben toen een beweging ingezet richting Continuous Delivery. In deze presentatie zullen we ingaan op de uitdagingen die we hadden, hoe we die hebben aangepakt, en op een aantal onverwachte voordelen.
A presentation (in Dutch) on using Durandal for SPAs. This was a presentation given for an internal meeting at Team4Talent (http://www.team4talent.be). There is a demo app to go along with it at https://github.com/petermorlion/DurandalDemo. The notes with each slide sometimes refer to this demo app.
Dutch: Het bouwen van een embedded Linux systeem lijkt vaak op toveren. Toch kan het ook met een systematische aanpak. Dat is goedkoper en levert een beter product op. Op een pragmatische manier wordt getoond hoe die, o-zo belangrijke "herhaalbaarheid" voor embedded systemen, ook met embedded Linux mogelijk is.
De complexiteit van licenties, stijgende kosten en het risico op een audit motiveren Oracle-klanten om hun migratie inspanningen snel op te starten en de liefde voor Postgres te omarmen.
EDB's Postgres migratie tools
Migreren van Oracle naar Postgres lijkt voor veel organisaties een complexe uitdaging. Daarom is onze Sales Engineer Gaby Schilders er om te helpen! Bekijk de slides van het door Gaby gepresenteerde webinar ‘DIY Oracle migratie naar Postgres’. Hij legt daarin uit waarom hij denkt dat onze tools de eenvoudigste en snelste manier zijn om zelf een migratie uit te voeren.
Tijdens dit webinar bespreekt hij onze verschillende tools en wanneer en waarom ze te gebruiken:
- EDB Postgres Advanced Server
- EDB Postgres Migration Portal
- EDB Postgres Migration Toolkit
- xDB Replication Server
Techdays 2013 NL - Serious Request met Windows AzureMichaël Hompus
Bijna iedereen in Nederland kent de Serious Request actie van 3FM en het Nederlands Rode Kruis. Wat weinig mensen weten is dat de afgelopen 2 edities voor een belangrijk deel op Windows Azure draaide. In deze presentatie wordt de architectuur achter de oplossing toegelicht, welke Azure componenten er gebruikt zijn. Wat we geleerd hebben van de eerste editie, wat we daarom aanpast hebben voor de tweede editie, en wat er nog meer mogelijk was omdat het Windows Azure platform zich in de tussentijd ook verder ontwikkeld heeft. Ook worden er veel ervaringen gedeeld waar je als ontwikkelaar tegen aan kan lopen bij het opzetten van een Windows Azure oplossing.
Hoe releasen minder pijnlijk werd bij de ANWB AlarmcentraleJeroen Reijn
Continuous Delivery wordt vaak geassocieerd met een snellere time-to-market, maar wat als dat niet je voornaamste probleem is? Een aantal jaar geleden heeft de ANWB besloten om zich van een traditionele enterprise organisatie te transformeren naar een Agile organisatie. Bij de afdeling Hulpverlening zijn wij met drie teams bezig met het ontwikkelen van het nieuwe case managementsysteem voor de ANWB Alarmcentrale. Als onderdeel van onze agile werkwijze maakten wij een release en rolden wij deze uit aan het eind van onze 2 wekelijkse sprints. Dit leverde ons regelmatig verschillende problemen op en halverwege 2016 besloten we dat het anders moest. We hebben toen een beweging ingezet richting Continuous Delivery. In deze presentatie zullen we ingaan op de uitdagingen die we hadden, hoe we die hebben aangepakt, en op een aantal onverwachte voordelen.
Niet onderhoudbare software in 10 makkelijke stappenRick Beerendonk
Ontwikkelde software eindigt vaker dan ons lief is in moeilijk te onderhouden code en een minder productieve organisatie. Ondanks goede intenties blijken simpele wensen moeilijker te implementeren dan nodig. Er ontstaan meer problemen dan verwacht. In het begin ging het allemaal nog zo snel, makkelijk en foutloos. Waar ging het mis? In deze sessie gaan we die vraag beantwoorden door onderscheid te maken tussen wat makkelijk lijkt en wat eenvoudig is. We behandelen bewezen technieken alsmede veelbelovende ontwikkelingen. Uiteraard kijken we verder dan het coderen, want software ontwikkeling blijft mensenwerk.
Hoe releasen minder pijnlijk werd bij de ANWB AlarmcentraleSjoerd Hemminga
Continuous Delivery wordt vaak geassocieerd met een snellere time-to-market, maar wat als dat niet je voornaamste probleem is? Een aantal jaar geleden heeft de ANWB besloten om zich van een traditionele enterprise organisatie te transformeren naar een Agile organisatie. Bij de afdeling Hulpverlening zijn wij met drie teams bezig met het ontwikkelen van het nieuwe case-managementsysteem voor de ANWB Alarmcentrale. Als onderdeel van onze agile werkwijze maakten wij een release en rolden wij deze uit aan het eind van onze tweewekelijkse sprints. Dit leverde ons regelmatig verschillende problemen op en halverwege 2016 besloten we dat het anders moest. We hebben toen een beweging ingezet richting Continuous Delivery. In deze presentatie zullen we ingaan op de uitdagingen die we hadden, hoe we die hebben aangepakt, en op een aantal onverwachte voordelen.
A presentation (in Dutch) on using Durandal for SPAs. This was a presentation given for an internal meeting at Team4Talent (http://www.team4talent.be). There is a demo app to go along with it at https://github.com/petermorlion/DurandalDemo. The notes with each slide sometimes refer to this demo app.
Dutch: Het bouwen van een embedded Linux systeem lijkt vaak op toveren. Toch kan het ook met een systematische aanpak. Dat is goedkoper en levert een beter product op. Op een pragmatische manier wordt getoond hoe die, o-zo belangrijke "herhaalbaarheid" voor embedded systemen, ook met embedded Linux mogelijk is.
De complexiteit van licenties, stijgende kosten en het risico op een audit motiveren Oracle-klanten om hun migratie inspanningen snel op te starten en de liefde voor Postgres te omarmen.
EDB's Postgres migratie tools
Migreren van Oracle naar Postgres lijkt voor veel organisaties een complexe uitdaging. Daarom is onze Sales Engineer Gaby Schilders er om te helpen! Bekijk de slides van het door Gaby gepresenteerde webinar ‘DIY Oracle migratie naar Postgres’. Hij legt daarin uit waarom hij denkt dat onze tools de eenvoudigste en snelste manier zijn om zelf een migratie uit te voeren.
Tijdens dit webinar bespreekt hij onze verschillende tools en wanneer en waarom ze te gebruiken:
- EDB Postgres Advanced Server
- EDB Postgres Migration Portal
- EDB Postgres Migration Toolkit
- xDB Replication Server
Digipinguins: containers en virtualisatie (Ghlen Nagels - youngsource.be)Avansa Mid- en Zuidwest
"Everybody believes in something and everybody, by virtue of the fact that they believe in something, uses that something to support their own existence." (Frank Zappa)
Virtualisatie is overal. De meeste mensen kennen het begrip van de realiteit, en misschien heb je ook van termen als virtuele machines en virtueel geheugen gehoord. Maar het concept bestaat al verrassend lang, ook buiten de IT.
In deze bijeenkomst zullen we daarom eerst een breed overzicht vergaren over virtualisatie en de toepassing ervan binnen het universum van bits & bytes.
In het tweede deel zoomen we in op de wondere wereld van virtuele machines. We lichten toe hoe virtuele machines op conceptueel niveau werken en je zal zelf kunnen ervaren hoe virtualisatie de moderne technologie verrijkt.
auteur: Ghlen Nagels (youngsource.be | laudis.tech)
In this hands-on workshop, Maurice will personally guide you through a series of exercises designed to empower you with a deep understanding of React Server Components and the power of TypeScript. Discover how to optimize your applications, improve performance, and unlock new possibilities.
Maurice will virtually be by your side, offering comprehensive guidance and answering your questions as you navigate each exercise. By the end of the workshop, you'll have mastered React Server Components, armed with a newfound arsenal of TypeScript knowledge to supercharge your React applications.
Don't miss this opportunity to elevate your React expertise to new heights. Join our workshop and unlock the potential of React Server Components with TypeScript. Your apps will thank you.
Let's face the facts and admit it: Estimating how long it will take to build software is hard.
Why is estimation so hard? Well there are some reasons for that. Many people tend to be optimistic about how long it will take to do a task. Not surprising when we learn the way memory works. It tends to skew our experiences from old projects. We often forget the many small setbacks encountered. Another reason is that many tasks are not included in the initial estimate. They only become visible over time.
Does that mean that estimation is impossible and a waste of time?
Not at all. Many software development activities are commercial activities. Starting something without even a rough estimate of what the costs and timeline will be is risky at best.
Surati Tech Talks 2022 / Build reliable Svelte applications using CypressMaurice De Beijer [MVP]
Tired of having users email you that your Svelte application is broken? Turns out that building reliable applications is hard and requires a lot of testing. You can write unit tests but quite often these all pass and the application is still broken. Why? Because they test parts of the application in isolation. But for a reliable application we need more. We need to make sure that all parts, including the backend API’s, work together as intended.
Cypress is a great tool to achieve this. It will test you complete web application in the browser and use it like a real world user would. In this session Maurice will show you how to use Cypress during development and on the CI server with Svelte. He will share tips and tricks to make your tests more resilient and more like how an actual end user would behave.
Tired of having users email you that your web application is broken? Turns out that building reliable web applications is hard and requires a lot of testing. You can write unit tests but quite often these all pass and the application is still broken. Why? Because they test parts of the application in isolation. But for a reliable application we need more. We need to make sure that all parts work together as intended.
Cypress is a great tool to achieve this. It will test you complete web application in the browser and use it like a real user would. In this session Maurice will show you how to use Cypress during development and on the CI server. He will share tips and tricks to make your tests more resilient and more like how an actual end user would behave.
Building a small to medium size business application with React isn't terribly hard. It has been done lots of times and there is plenty of information about what works and what doesn't. However building a large, complex and mission critical application with React is another matter. How to configure reliable hosting on Azure for the front and back-end? How to track runtime errors that happen in the browser. And how to create an efficient workflow between front and back-end teams. In this session Maurice de Beijer will share his experiences in building a globally deployed application that is used by thousands of people who depend on the availability and proper functioning of the application for a safe work environment.
https://azconf.dev/
With the release of React 18 we finally get the long awaited concurrent rendering. But how is that going to affect your application? What are the benefits of concurrent rendering in React? What do you need to do to switch to concurrent rendering when you upgrade to React 18? And what if you don’t want or can’t use concurrent rendering yet?
There are some behavior changes you need to be aware of! In this workshop we will cover all of those subjects and more.
Join me with your laptop in this interactive workshop. You will see how easy it is to switch to concurrent rendering in your React application. You will learn all about concurrent rendering, SuspenseList, the startTransition API and more.
https://reactadvanced.com/workshops-3h
Building a small to medium size business application with React isn't terribly hard. It has been done lots of times and there is plenty of information about what works and what doesn't. However building a large, complex, distributed and mission critical application with React is another matter. Add occasional poor mobile connectivity and things become really challenging. That doesn't mean that it is impossible, it is just harder to architect and develop. In this session Maurice de Beijer will share his experiences in building a globally deployed application that is used by thousands of people who depend on the availability and proper functioning of the application for a safe work environment.
https://www.c-sharpcorner.com/events/react-virtual-conference2
Building a small to medium size business application with React isn't terribly hard. It has been done lots of times and there is plenty of information about what works and what doesn't. However building a large, complex, distributed and mission critical application with React is another matter. Add occasional poor mobile connectivity and things become really challenging. That doesn't mean that it is impossible, it is just harder to architect and develop. In this session Maurice de Beijer will share his experiences in building a globally deployed application that is used by thousands of people who depend on the availability and proper functioning of the application for a safe work environment.
https://www.meetup.com/nl-NL/tilburg-tech-tuesdays/events/277150883/
Een kleine React applicatie bouwen met een backend is niet moeilijk. Maar wat als de applicatie groter en complexer wordt? Dan wordt het een ander verhaal. En al helemaal als het een publiek toegankelijke applicatie is.
Plotseling blijkt dat allerlei vaak gedane aannames niet meer kloppen. Je krijgt te maken met netwerkstoringen en schaalbaarheid. Verschillende teams die onafhankelijk van elkaar aan de front- en backend werken. Runtime fouten die optreden omdat sommige browsers toch net even anders blijken te werken dan je verwacht.
In deze sessie gaat Maurice de Beijer zijn ervaringen delen over hoe je dit aan kan pakken.
The React team rewrote the book on developing components. Before we had a choice between classes and functional components. Yet many components needed to be classes. A functional component was often too limited. Now, using hooks, we can extend functional components to be as powerful as we want.
Suspense and asynchronous rendering is in the future of React. It will make large applications much more responsive and easier to deal with. Getting started with suspense and asynchronous rendering isn't hard as you will discover.
Come to this session to learn what React hooks are and how to get started using hooks. But be warned, once seen React hooks can’t be unseen and your React components will never be the same again.
Tired of having users email you that your web application is broken? Turns out that building reliable web applications is hard and requires a lot of testing. You can write unit tests but quite often these all pass and the application is still broken. Why? Because they test parts of the application in isolation. But for a reliable application we need more. We need to make sure that all parts work together as intended.
Cypress is a great tool to achieve this. It will test you complete web application in the browser and use it like a real user would. In this session Maurice will show you how to use Cypress during development and on the CI server. He will share tips and tricks to make your tests more resilient and more like how an actual end user would behave.
React keeps on evolving and making hard things easier for the average developer.
One case, where React was not particularly hard but very repetitive, is working with AJAX request. There is always the trinity of loading, success and possible error states that had to be handled each time. But no more as the <Suspense /> component makes life much easier.
Another case is performance of larger and complex applications. Usually React is fast enough but with a large application rendering components can conflict with user interactions. Concurrent rendering will, mostly automatically, take care of this.
You will learn all about using , showing loading indicators and handling errors. You will see how easy it is to get started with concurrent rendering. You will make suspense even more capable by combining it with concurrent rendering, the useTransition() hook and the component.
The React team has rewritten the book on developing components several times. This time they have introduced Suspense. Amongst other thing this makes splitting your application into multiple bundles easier. But that is only the start as the real innovation comes when loading data. Gone are the side effect hooks with the typical loading, loaded and error states. Instead we can suspend components when loading data. Need to do multiple request? No problem you can suspend multiple components at the same time if you want. Need to trap errors? No problem just use a standard React error boundary. Come to this session to learn what React Suspense can do for you.
Reactive and functional programming, you have probably heard the term mentioned before. It’s supposed to be really cool and a good practice. But what is reactive programming exactly and how to get started with it in JavaScript? And why does Angular start using the reactive extensions for JavaScript (RxJS) instead of standard promises?
In this presentation, Maurice is going to show you how to get started with RxJS, the JavaScript implementation of the ReactiveX library. You will learn why using RxJS is a great way of dealing with streams of events in an asynchronous and functional way.
Using restful APIs can be hard on your React applications. Before you know it, you are doing lots of parallel queries to the server. Using GraphQL instead of REST might help a lot. Instead of downloading many complete resources each component declares its own needs. Then the GraphQL client library then combines these requirements. The result is a single optimized query for the server. In this session, Maurice de Beijer is going to show you how to get started with GraphQL in your React applications.
Create flexible React applications using GraphQL apis
Unleash the power of raven db
1.
2. Laat ons weten wat u vindt van deze sessie! Vul de evaluatie
in via www.techdaysapp.nl en maak kans op een van de 20
prijzen*. Prijswinnaars worden bekend gemaakt via Twitter
(#TechDaysNL). Gebruik hiervoor de code op uw badge.
Let us know how you feel about this session! Give your
feedback via www.techdaysapp.nl and possibly win one of
the 20 prizes*. Winners will be announced via Twitter
(#TechDaysNL). Use your personal code on your badge.
* Over de uitslag kan niet worden gecorrespondeerd, prijzen zijn voorbeelden – All results are final, prices are
examples
4. Unleash the power of
RavenDB
Er zijn veel manieren om data te bewaren.
Traditioneel wordt hier vaak een relationele
database, zoals SQL Server, voor gebruikt. Maar
er is een andere categorie, de zogenaamde
NoSQL databases, die steeds populairder wordt.
5. Unleash the power of RavenDB
•Wat is RavenDB?
•RavenDB Management Studio
•Building blocks
•Safe by default
•Deployment
•Raven Bundels
Agenda
6. Wat is RavenDB?
•Een van de “NoSQL” databases
• Net zoals MongoDB
•Een Document database
• Bewaar documenten ipv records
•Maar dan wel met ACID transacties
• En ondersteuning voor TransactionScope
10. Pros & Cons
•Voordelen
• We bewaren en laden objecten waar we mee werken
• Schaalbaarheid
• Eventual consistency
•Nadelen
• Geen relationele integriteit
• Geen standaard reporting tools
• Eventual consistency
13. Main building blocks
•IDocumentStore
• Kostbaar om aan te maken
• Een per applicatie als singleton
•IDocumentSession/IAsyncDocumentSession
• Een per unit of work
•Bewaar/laad elke POCO
14. Queries
•Gebruik Load() om een enkel document te laden
•Gebruik LINQ om documenten te zoeken
• Gebruikt altijd een index
•Full text zoekopdrachten
• Mbv Lucene
• Ook fuzzy searches
16. Safe by default
•RavenDB doet niet zo maar alles
• Beperkt het aantal resultaten
• Standaard maximaal 128 documenten
• Kan tot 1024 verhoogd worden.
• Beperkt het aantal opdrachten
• Standaard maximaal 30 opdrachten
• Beide zijn eventueel aan te passen
• Maar dat is een slecht idee
22. Laat ons weten wat u vindt van deze sessie! Vul de evaluatie
in via www.techdaysapp.nl en maak kans op een van de 20
prijzen*. Prijswinnaars worden bekend gemaakt via Twitter
(#TechDaysNL). Gebruik hiervoor de code op uw badge.
Let us know how you feel about this session! Give your
feedback via www.techdaysapp.nl and possibly win one of
the 20 prizes*. Winners will be announced via Twitter
(#TechDaysNL). Use your personal code on your badge.
* Over de uitslag kan niet worden gecorrespondeerd, prijzen zijn voorbeelden – All results are final, prices are
examples