DEV Community

Nick Holmes profile picture

Nick Holmes

Time flies while you're having fun, but then one day your bio says something about being a 30+ year veteran in software engineering. Still, I've not seen it all, let alone done it all (yet).

Location Germany Joined Joined onΒ  Personal website https://improving.software github website

Education

MSc (hons) Software Engineering

Work

Head of Special Engineering Group

All 64 comments

We are starting a new country called Promatia, Ask Me Anything!

I learned all I needed to know about Promatia's founding fa...

Daily Challenge #159 - Isogram

Nice. Just the kind of "essential" solution I like.

Question Friday #1: What is your top 5 tool you use on a daily basis?

Assuming we are speaking about software tools; Work: Vis...

Daily Challenge #158 - RGB To Hex Conversion

In C#, you don't even really need to implement a method for...

Daily Challenge #156 - Dave's Gamble

Isn't this the exact same challenge as from a couple of day...

Day 3: From string to math

Indeed. :-(

Day 3: From string to math

Nice solution to the problem, but you can simplify. Additio...

What are the worst programming languages that nobody should learn?

So, you're saying Cobol is perfect for people with a predom...

What are the worst programming languages that nobody should learn?

Even the "worst" language is worth studying (if not learnin...

Daily Challenge #154 - Stable Arrangement

Your "shift then push" approach changes the positions of th...

Rubber Ducks: Do they even Work?

Talk to other people? Srsly?

Day 2: Fixed point

As a constructive critique of your solution: A) if(array...

When is nesting good or neutral?

I would suggest that scoping is data structure nesting, not...

When is nesting good or neutral?

Nesting control structures quickly creates very many possib...

No, TypeScript is not a waste of time.

I think its very weak to compare to languages by trying to ...

No, TypeScript is not a waste of time.

I'm certain it is neither literally C#, nor idiomatic of th...

Daily Challenge #152 - Strongest Number in an Interval

Well, my F# solution translated to C# would be something li...

Daily Challenge #153 - Horse Race Gamble

Yes, I said that in my post. However, I misread the chall...

Daily Challenge #153 - Horse Race Gamble

The code (F#) let WinnerCombinations n = if (n <= ...

What would you like to learn in 2020?

Just from the fun/personal enjoyment side of coding, I'm wi...

Daily Challenge #152 - Strongest Number in an Interval

Don't write functions that already exist... let strongest...

Manage project from start to end

I think you need to narrow your question do a bit. Or a lot...

A .NET Manager's Perspective on F#

I put my first F# code into production in the summer of 200...

Daily Challenge #140 - I love you, a little, a lot, passionately ... not at all

You're right about the (n+6)%6 (its correct, but the +6 doe...

What was your first project?

My first personal software project was a PCB design and layou...

W3C confirms: WebAssembly becomes the fourth language for the Web πŸ”₯ What do you think?

I'm not a fan of JavaScript, but there was no credible altern...

Setters on immutable objects?

Formally, a setter is know as a mutator method. It's parado...

Do you have any rituals to get up to speed, when coming back from holidays?

Spotify, a pair of Sony WH1000XM3 noise cancelling headphon...

What helps you most to stay productive πŸ’ͺ throughout the day?

Yes, task lists help with immensely (I like old fashioned p...

Daily Challenge #138 - Do I get a Bonus?

Obtuse, but fun!

What's the need of rune as a separate type?

Two things; A rune represents a single Unicode Code Point ...

Daily Challenge #138 - Do I get a Bonus?

Here's an F# version of the function without obvious args, ...

Daily Challenge #138 - Do I get a Bonus?

Clearly, F# doesn't pay well enough.

Will I still be called a developer?

It is, if you like, the difference between theory and appli...

Can you solve this math problem? (The long Math night: an embarrassing tale.)

Well, all the solutions are given by the integer solution t...

How to Estimate Software Development Project

You say Project cost estimation has two established methods: ...

Daily Challenge #137 - Help the Bookseller

Another F# one. (But as I read it, the return value should...

Daily Challenge #136 - The Deaf Rats of Hamelin

Thanks for the feedback. With a little inspiration from Avala...

Daily Challenge #135 - The Wide Mouthed Frog!

Well, I guess in this case it's down to personal preference...

Daily Challenge #135 - The Wide Mouthed Frog!

Sorry. You nailed it, but misspelled alligator.

Daily Challenge #136 - The Deaf Rats of Hamelin

Done very quickly, but works. F# let deafRats s= let ...

DevTips: Use early returns to avoid nested conditions

Nice article. Building an intuition for overly complex code...

Daily Challenge #135 - The Wide Mouthed Frog!

and not handling case insensitivity.

Does being an introvert influence the chance of getting hired at a job interview?

Not everyone is impressed just because someone is extrovert...

Device Limit like netflix

Right. So you have a couple of problems to solve. Firstly y...

Daily Challenge #135 - The Wide Mouthed Frog!

Challenge or not, at this time there are 6 solutions posted...

Daily Challenge #135 - The Wide Mouthed Frog!

Good example of why unit tests are important!

Daily Challenge #135 - The Wide Mouthed Frog!

F#: let mouth_size = function | IgnoreCase "alligator...

Device Limit like netflix

Do you mean limit the number of devices per user, or just t...

Daily Challenge #134 - Rice and Chessboard Problem

Here is an F# tail recursive bit shifting version; let sq...

Daily Challenge #134 - Rice and Chessboard Problem

Indeed. There is a BigInteger in .Net (bigint in F#), and ...

Words You Shouldn't Use in Your Workplace

I'm guessing I should be reigning in those "WTF!"s during c...

Daily Challenge #134 - Rice and Chessboard Problem

No loop is needed, just some basic maths knowledge. Total g...

Looking for scripting language

I'm a fan of PowerShell. Here's what they say about themsel...

How to implement login limits if rest apis are stateless?

Stateless in the context of REST APIs means not storing any d...

Welcome Thread - v51

Hello All, What brought me here: I want to avoid being in ...

Is it important to have hobbies outside of coding?

It doesn't work for me - no matter what interests I take up...

Daily Challenge #133 - Suitcase Packing

In F#. let fit_in a b m n = a + b <= max m n

100% test coverage is not enough...

Unit Tests (100% or otherwise) are not an appropriate tool ...

loading...