Blog

Useful commit messages

While building a new feature or refactoring code, do you ever look at some piece of code and wonder what the intention of the writer was? I sure do. So, you annotate the code and check for the commit. Then you see a commit message like: ‘fixed bug’.  This doesn’t really help. What was the

Lees verder

Beyond API Gateway polling

A short while back, we wrote about building serverless APIs using AWS services. By using the AWS API Gateway, most of the heavy lifting is handled for you, so you can focus on the business logic that adds value to your products. The API Gateway has made most REST APIs very easy to implement for

Lees verder

Introducing tests in an existing codebase

If you have not experienced it before, you almost certainly will some day in the future: you join in on an existing project, but it has no test coverage to write home about, unit test or otherwise. We’ve all learned about the need for automated test coverage in your code, either via an education (official

Lees verder

Automated incident response to compromised EC2 instances

The Cloud provides us with previously unseen capabilities in proactive security of our architectures. One such highlight is the ability to automate practically anything, a feat possible because everything is virtualised and all resource operations are placed behind an API. This is particularly useful for situations where time is of the essence, such as during

Lees verder

IoT series – deel 1 – Embedded meets the Cloud

De populariteit van IoT blijft groeien en de verwachting is niet dat op korte termijn deze groei zal stoppen. Steeds meer bedrijven ontdekken dat het verbinden van apparaten met het internet hen en hoop interessante informatie (data) oplevert. Data die, door het leveren van meer inzicht gebruikt kan worden om producten te verbeteren en processen

Lees verder

Resources for passing the Azure Developer Associate (AZ-203) exam

  The AZ-203 is a relatively new exam, having been released just before the end of 2018. It replaces the old 70-532 and 70-533 exams that were required for the title Azure Developer Associate. And while you only need to pass one exam now to obtain that title, passing has not necessarily become easier or

Lees verder

Automatically publish NPM packages with Travis CI

Travis CI allows you to automate the test, build and publish of npm packages or any other type of project. The great thing about Travis CI is that it’s FREE to use for open source projects. On the end of this post you should be able to let Travis build and publish a npm package

Lees verder

Writing portable AWS Glue Jobs

AWS Glue is a somewhat magical service. When it works, it makes ETL downright simple. With Glue Crawlers you catalog your data (be it a database or json files), and with Glue Jobs you use the same catalog to transform that data and load it into another store using distributed Spark jobs. And all that

Lees verder

Opgelet! Lage drempels voor het toepassen van de Public Cloud

Bij een cloud migratie, en typisch bij de architectuur en design fases van een migratie traject denken we na over het projecteren van de bestaande/gewenste functionaliteiten en kwaliteiten op bij voorkeur cloud-native PaaS diensten in een Public Cloud. De migratie heeft als bron vaak een on-premise bare-metal of gevirtualiseerde server implementatie, of een data-center gebaseerde

Lees verder

HTTP and connection pooling

HTTP is used heavily in many microservices architectures. While there are other options to increase the performance, if you conclude HTTP is the way to go, looking into using persistent connections might save your day. If the server supports persistent connections, HTTP connection pooling can provide performance benefits when multiple HTTP requests target the same

Lees verder

Cloud Strategy: Self-Service vs. Controlled

The major public Cloud platforms are playing a special kind of land-grab. As a result, ever more resources are made available closer to ever more customers. These resources are available to anyone, instantly, based on micro-billings for time reserved or actual use. All you need is a creditcard. It’s the ultimate form of self-service backed

Lees verder

Preventing NullPointerExceptions in Java using Optionals

If you are a Java programmer then you know Java has ‘null’ references. These ‘null’ references are the cause of NullPointerExceptions in our programs. Trying to access a field or method on a reference that does not point to an object will result in a NullPointerException at runtime. For example, assume the class UserRepository defines

Lees verder

Containers à la carte in Azure

De afgelopen jaren heeft de adaptatie en de volwassenheid van containerization, met Docker als bekendste voorbeeld, binnen onze discipline een flinke vlucht genomen. Daarbij heeft de tweede de eerste in de hand gewerkt. Containerization, het toepassen van containers voor het omsluiten van een applicatie heeft als voordeel dat alle afhankelijke componenten die benodigd zijn voor

Lees verder

Building serverless APIs using AWS services

Lately I’ve been talking on a few occasions to peers and customers about how to build serverless Web APIs using AWS. The key objective of this talk is to discuss different kinds of communication patterns and how we can implement these using AWS services. Since then I have received several requests to share the slides,

Lees verder

Cloud Strategy: Cloud or Clouds?

Vendor lock-in is a concern when moving to the Cloud. Depending too much on anything is a risk and relying on Amazon, Google or Microsoft is no different. What if they go out of business? No one expects that to happen any time soon, but unexpected things happen. It is just something to think about

Lees verder

Firebase: Cloud voor frontend developers

Bij Profit4Cloud hebben we het nogal vaak over de Cloud. Maar we hebben niet alleen Cloud-fanatici. Onder ons zijn ook frontend developers die zich vooral bezig willen houden met het bouwen van apps d.m.v. JavaScript, HTML en CSS. Toch heb je bij het maken van een app meestal ook een backend nodig. En dat is

Lees verder

De Cloud verandert het speelveld

Softwareontwikkeling gaat in de basis over het vertalen van wensen in software; een creatieve vorm van probleemoplossing waarbij een gestructureerde aanpak en intelligentie helpt, trouwens ook geduld en doorzettingsvermogen voor het geval dat het niet meteen lukt. Hier verandert helemaal niets aan. Wat wel steeds verandert is hoe we onze oplossingen implementeren. Ons vak is

Lees verder

AWS Summit Benelux 2018

Donderdag 31 mei was het zover de AWS Summit Benelux in het World Forum gebouw in Den Haag! Dr. Werner Vogel, CTO van Amazon.com, trapte af met zijn keynote boordevol informatie over AWS technieken en toepassingen. Zo nam hij ons mee in het verhaal van IRobot, de fabrikant van de Roomba robotstofzuiger. IRobot heeft een

Lees verder

Profit4Cloud Tech Update 2 – DEVOPS kickstarter

Afgelopen dinsdag hebben we de tweede Profit4Cloud Tech Update van 2018 verzorgd op ons kantoor in Amsterdam. Ook deze keer weer een goede opkomst, een lekkere BBQ en een gezellige borrel als afsluiting. De presentatie bestond uit een combinatie van sheets en demo’s rond een DEVOPS scenario uitgedrukt in Azure en het toepassen van ARM-templates

Lees verder

Async API with API Gateway and the SQS Alternative

In the previous blog post, we showed how we can create an async API by configuring API Gateway to transform and publish requests directly to Amazon Simple Notification Service (SNS). The great thing about SNS is that SNS can trigger a Lambda function by publishing messages to topics. These functions act as worker to do

Lees verder

Async API with API Gateway and SNS

When discussing the implementation of a asynchronous API on AWS the first solution that came to mind (at least to mine) was to use API Gateway, two Lambda’s and a queue (or actually a SNS topic). ‘2-lambda’ solution The first Lambda function would be configured to receive the request from the API Gateway and publish

Lees verder

Secure serverless with Lambda breaks the rules?

AWS Lambda lets you just run code without provisioning or managing servers. Its execution is triggered by an event. An example of the supported AWS services that you can configure as an event source is API Gateway. This allows for triggering a Lambda function over HTTPS by configuring an endpoint in the API Gateway. When a HTTPS

Lees verder

Exploring the servers in ‘serverless’ AWS Lambda, Part I

AWS Lambda pioneered serverless compute offerings. With serverless compute we don’t need to know about the underlying servers that ensure that our application is always on (available) and scaled to match the current load. No need, but that doesn’t mean that I don’t want to know. Consulting the official docs Curious about the inner workings

Lees verder

Cloud Platform Selection for Developer Experience

  Everywhere I go people are either thinking about moving to the Cloud or evaluating their first steps and debating what their next step should be. (Ok, so given what we do at Profit4Cloud that is not like a representative sample of what goes on in companies all the time; they probably have a business

Lees verder

Just Spring-enabled AWS Lambdas

  Ok, so you want to program your AWS Lambdas in Java and use Spring? You have a few options, such as using Spring Cloud Functions or the AWS Serverless Java Container project by AWSLabs. Both of these projects are interesting in their own way; The first tries to save us from vendor lock-in by abstracting

Lees verder

Profit4Cloud Tech Update – Serverless APIs op AWS

Afgelopen donderdag hebben we onze eerste Profit4Cloud Tech Update van 2018 verzorgd. Met zo’n 50 aanwezigen, die ondanks ‘code rood’ toch de weg naar ons kantoor wisten te vinden, prima eten en een gezellige borrel kijken we terug op een geslaagd evenement. Op verzoek ook links naar de presentatie en de gebruikte sources.

Lees verder

Google Cloud OnBoard HTC Eindhoven

Vorige week vond de “Google Cloud OnBoard” training plaats op de High Tech Campus in Eindhoven. Een complete dag georganiseerd door Google om engineers te interesseren voor hun Cloud-platform. Het was, zoals de naam al zegt, een training voor beginners om kennis te maken en de mogelijkheden te zien. Ze begonnen dus, uhm, bij het

Lees verder

Testen, hoe maak je het leuk?

Zonder een hoop mensen te willen beledigen, testen is een beetje het lelijke eendje in het ontwikkelproces. Iedereen snapt het nut ervan, maar stakeholders hebben liever nieuwe functionaliteit en developers schuiven het daarom graag naar achteren. Want laten we eerlijk zijn, nieuwe dingen bouwen is veel leuker. Maar helaas, dit is niet verstandig. Testen zijn

Lees verder

Scrummenarij

Ik scrum, hij scrumt, zij scrummen, wij hebben gescrumd…. Zullen we er zo op terug kijken als we 5 jaar verder zijn? Zo van: ‘Wat hadden we gescrumd!’ Nu – anno 2017 – is dat bijna niet voor te stellen. Scrum is in. Iedereen scrumt. Als je niet scrumt, wat doe je dan nog wel?

Lees verder

Vermenselijking van IT

Sinds de jaren ‘60 zien wij dat IT steeds menselijker aan het worden is. Waar eerst bijna alleen het domein van techneuten was, zie je door de jaren heen hierin een verandering. Zeker de laatste 5 jaar zijn wij hierin in een stroomversnelling gekomen. Natuurlijk is techniek nog steeds de basis van IT en dit

Lees verder

Google Cloud Next 2017

Woensdag 21-juni zijn we met een groepje Profit4Cloud collega’s naar de Google Cloud Next conferentie geweest in de Kromhouthal te Amsterdam. Erg inspirerend en het bezoekersaantal van 1500, over het algemeen engineers, laat maar weer eens zien dat Cloud de toekomst is. De 1-daagse conferentie staat bol van technische praatjes en demo’s van de nieuwste features

Lees verder

Scrum Guide Refresh 2016 highlights

Recent, juli 2016, hebben Jeff Sutherland en Ken Schwaber, de makers van het Scrum Framework, via een Webinar de updates van de Scrum Guide gepresenteerd. Je kan zien dat Jeff en Ken al meer dan 20 jaar bezig zijn met Scrum en nog steeds verbeteringen doorbrengen aan het Scrum Framework. Dit blog beschrijft in het kort een

Lees verder

Java-mensen in overvloed!

De economie trekt aan en dat merken wij zeker op het ICT-vlak en dan nog voornamelijk op het Java- en Front-end-domein. Iedereen zoekt de ervaren mensen, echter die zijn steeds minder beschikbaar. Je wilt echter wel je doelen halen en de stappen naar de toekomst blijven zetten. Daar kan op verschillende manieren invulling aan worden

Lees verder

Building a dream

Building a dream! Soms gebeuren er dingen in het leven die niet gepland zijn maar die je kansen geven waar je alleen maar JA tegen kunt zeggen. Zo ontstond, eind 2014, bij mij de samenloop van omstandigheden waarbij ik de mogelijkheid had om binnen Profit een nieuw onderdeel/bedrijf te starten. Een stap waarvan ik altijd

Lees verder

Op weg maar succes

Iedereen wil succesvol zijn, maar hoe word je dat nu ook daadwerkelijk? Hierover zijn boeken vol geschreven en ik pretendeer zeker niet het antwoord te hebben! Maar ik heb er wel zo mijn gedachten over en ik denk dat de stap naar het succesvol zijn er soms anders uitziet dan je denkt of dan je

Lees verder

De evolutie van Agile

“It’s not the strongest or the most intelligent who will survive but those who can best manage change.” – Charles Darwin Software-ontwikkeling is nu ruim een halve eeuw gemeengoed in onze wereld, het lijkt echter voor vele partijen lastig om dit op een professionele en voorspelbare manier te doen. Een duidelijk en recent voorbeeld hiervan

Lees verder

Zijn software engineers te managen?

Vanuit een historisch perspectief gaan we er bijna standaard vanuit dat een groep mensen in zakelijk opzicht een manager nodig heeft. Gelukkig zie je steeds vaker bedrijven die succesvol zijn met een minimale hoeveelheid managers. In het verleden heb ik managers gedreven software engineers horen bestempelen als lastig, eigenwijs, ingewikkeld en weg van de realiteit.

Lees verder