Cloud Economics and Terraform; How to start

Originally posted on SogetiLabs:
https://labs.sogeti.com/cloud-economics-and-terraform-how-to-start/

It is really easy to blow all your budget when you do not know the impact of the choices you make in the cloud. And while there are many tools available to run analysis on your bill, or showing where your money went, would it not be smarter to shift everything left?

34 per cent of large enterprises set a budget of at least $10m a year while 62 per cent of small business went for under $100k. Of those spanking between $2m and $10m on the cloud, almost half overspent (compared to 27 per cent of those budgeting until $100k

https://www.hashicorp.com/blog/cloud-budgets-busted-almost-40-overspent-last-year

In a race for speed of delivery, putting restrictions on cloud environments can be contra-productive. On the other hand money can fly out the window if you do not keep everything in check. So what is the solution?

Continue reading “Cloud Economics and Terraform; How to start”

Why you should stop spinning up VMs

Originally posted on SogetiLabs: https://labs.sogeti.com/why-you-should-stop-spinning-up-vms

If I would get paid a euro for each time someone says ‘Let’s spin up a VM for that!’ or ‘We have this VM running anyway’, I would have been a rich man.

Although I do advocate reuse, stuffing many services on a machine ‘because it runs there anyway’ will cause a huge problem if there is a shift in architecture or platform. In the end all services need to be carved out and that can be a real pain in the behind. Also it does not really scale, for obvious reasons.

Continue reading “Why you should stop spinning up VMs”

Everything is Code. Why and how you should test your Terraform

Originally posted on SogetiLabs: https://labs.sogeti.com/everything-is-code-why-and-how-you-should-test-your-terraform/

I’ve written in a previous blog that for writing maintainable code, you really should automate your tests. Currently we see Terraform really taking off as the standard to provision and deploy almost everything in cloud like Azure and AWS. In this short blogpost I will show how you can start testing your Terraform code using the Open Policy Agent.

Continue reading “Everything is Code. Why and how you should test your Terraform”

Is low code replacing traditional development?

Originally posted on SogetiLabs: https://labs.sogeti.com/is-low-code-replacing-traditional-development/

Spoiler alert; no.

Low code vs Traditional Dev

My colleague, friend and SogetiLabs Fellow Daniel Laskewitz and I frequently talk about this topic. His field of expertise as Microsoft MVP covers the Microsoft PowerPlatform including low code systems like Power Automate (formerly Flow).

All too often people see a division between low code and traditional development using languages like C#, Java, TypeScript and Go.
In the real world however, these systems work together perfectly.

Most of the times, you cannot solve a problem with only low code. Think about scenario’s where you should link to old legacy systems or complex API calls. In those cases low code without any enhancement cannot natively connect to those systems.

Behold custom connectors

In the Microsoft ecosystems, custom connectors allow you to bridge this gap. This way, the low code system can interact with any system you write a connector for. This may be common knowledge, but the fact is that most developers do not see how big this really is.

This means you can link any PowerApp, Microsoft Flow, or LogicApps to your custom connector, and reuse those within your entire organisation.
You could even publicly publish these if you have a service you want to expose. So if you are an ISV, this can help you get more traction on your product.

Bridging the gap

In the end it all comes down to developers of any system and language understanding the capabilities of the platforms they and their companies are using. For low code developers this means sometimes calling in the help of traditional developers. And more importantly, this also means traditional developers should learn that these low code systems can help you simplify (and thus speed up!) your development by using ready-to-roll systems and connectors available to you.

As there are over 325 connectors available, that should really speed making connections up!

Get started!

Want to explore custom connectors? Look at these resources or feel free to contact me or Daniel, we strongly believe bridging this gap between low code and traditional dev is key for succes in the future of development!

Education in a 5 feet economy

Originally posted on SogetiLabs: https://labs.sogeti.com/education-in-a-5-feet-economy/

Our Prime Minister Mark Rutte prepared us; the 5 feet economy could be here for a while. How does that work in education? And what problems do we see around us?

Technology Leaders

I (try to) teach coworkers and clients on a regular basis, and do this mostly on-site to get the interaction going between everyone in the room, and also to get a sense of how people react to my presentation or my talk. I personally find it hard to get the same feedback while working remotely.

Mind you; we are ‘Technology Leaders‘ and are capable of doing our job and all sessions remotely. We have the tech, but do we really have the same impact? At this moment, we do not have a choice, and have to do things online.

Education Online

As a father-of-three, I see these issues also on the side of education. Kids in pre-school really learn a lot in the classroom, and also from their friends in class. Want to be engaging and keep the attention of your coworkers? Try doing that for 6 or 7-year-olds…

My belief is that, especially for children, learning from each other is key. This cannot be replaced by an online tool. Still, in these ‘5 feet times,’ you have to make concessions. Digital skills are important, so make sure your kids and your friends can work online.

I see schools struggle with Microsoft Teams, Skype, with MOOC environments and with technology in general. I see this as a fail from IT companies; We always talk about inclusion, but it is still difficult to get everyone online working together. We have done a very good job making sure ‘we’ the IT people can do everything online, but we see educators or parents in general struggling with technology.

Help the educators, help each other

Big things start small; My door is always open, and I (time permitting) am always available for a quick tip or some help. Keep in mind that using Teams or Skype or Zoom is second-nature to ‘us’, for some parents or teachers this can be challenging. By helping another parent, simply by explaining how a tool works, you already have one more person that uses the tool. Maybe you can lend out a spare laptop for someone not having those resources. Maybe you can fix their internet, or setup their environment.

Small things count, we can make a difference together.

Does language matter?

Originally posted on SogetiLabs: https://labs.sogeti.com/does-language-matter/

In my previous blog I stated my learning goal for 2020: Learning (or getting a better understanding) of the Go language. Currently I’m studying various courses, and have to give huge credits to Todd McLeod for his excellent work on courses on this subject.

Working with what you were given

In many cases I have to work what is given. If I am helping a client running Java with Docker, I cannot simply move them to another language or framework, just because that seems a better technical solution. I have to keep in mind that people and companies have invested in a language or framework, and sometimes it seems almost a religious feud (Windows vs Linux) instead of an objective view on the subject. So in a way, a language does not matter in my work as a consultant or architect. I have my preferences, but cannot force them onto a group just for sake of my own reasons.

Let’s Go! (pun intended)

Go is a very elegant and fast language. Testing is built right into the language, as is documentation. It pretty much runs on any OS, and does that really fast.

The authors (Robert Griesemer, Rob Pike, and Ken Thompson) wanted to address criticism of other languages in use at Google, but keep their useful characteristics (Wikipedia):

  • static typing and run-time efficiency (like C++)
  • readability and usability (like Python or JavaScript)
  • high-performance networking and multiprocessing

In Go everything revolves around ease of programming and frankly, it is just plain fun coding in Go! I’m amazed with the speed of coding and simplicity of concurrency. Numerous IDE’s are available, making it easy to start with the language.

What language do you choose?

If you are in a greenfield environment, or want to create services that have the need for speed; think beyond your comfort zone. Experiment with languagues and frameworks. See what fits for your purpose.

In any case, take a look at Go with your team, and let me know what you think of it!