Bartosz Krajka

Personal blog

Category: Programming (page 1 of 2)

7 reasons why I’m skeptical about TypeScript

TypeScript? More like HypeScript to me.

This is not to say that I don’t want to use TypeScript. Please keep in mind that I’m only highlighting a bunch of serious disadvantages in my eyes.

Without further ado…

Continue reading

“Automate everything” is a scam

Nowadays I see people going crazy about automation. Everything must be in Docker containers, If it’s not in docker, I ain’t touch it.

Every task must be performed on the CI server, every repetitive task must be converted to a script, nothing in the MVP can the back office do manually. People are praised when they claim: “automate everything”!

I am on the very opposite side. I think automation generally isn’t worth it. It can be harmful to your project and see the trend of “automate everything” kinda crazy. Let me explain why.

Continue reading

The pyramid of software development principles

This post was originally posted on medium. Here I paste it and give it a fresh look in a few places.

Was anyone else ever under impression that principles of software development are a mess?

Continue reading

YAGNI vs good design

In one of my previous posts – YAGNI is king – I advocated the idea of not anticipating future when it comes to developing features.

I got some feedback that I want to discuss: YAGNI applies to features, not design. When designing software, you have to anticipate the future. Therefore, sometimes you have to give up on YAGNI if you want a good design.

In other words: on a pull request, when you see an extra piece of code, don’t automatically assume it violates YAGNI. Maybe it’s for design purposes.

I take the point, but also have to add something on my defense.

Continue reading

Why are there no full stack mobile devs?

The term “full stack devs” seems to be reserved to the web only. What’s worse, as a web dev I’ve always felt pressure to know well both frontend and backend.

On the other hand, I’ve worked with many mobile devs, none of whom I would call a full stack. Typical mobile dev needs another dev (backend dev) to create a full-fledged app.

I still don’t understand why. Let me debunk a few typical answers that I’ve heard but I don’t find true.

Continue reading

Manage complexity bottom-up

When it comes to adding complexity to the code, I generally see two schools of programming:

  1. Top-down: start with abstractions, then write implementations for it.
  2. Bottom-up: write down the whole implementation, then make abstractions out of it.

This post advicates the second school.

Continue reading

Styling <br> tag – 2 cases

Funny thing – recently I used CSS styling for HTML <br> tag, which remembered me another situation when I saw that. So I decide to write them down, in case if anyone is interested.

Continue reading

5 Things I Used To Get Wrong About TDD

Recently my team and I had a discussion panel about TDD. That made me reconsider a few things I was certain about. Here’s a little confession that summarizes the whole thing – 5 things that I no longer consider true about TDD:

Continue reading

YAGNI is King

A note on the importance of not anticipating future.

Continue reading

Don’t Test Data

As you could read in my initial “Don’t Test…” post, I’m against too many test cases. Here’s another thing you shouldn’t be testing.

Continue reading

« Older posts

© 2020 Bartosz Krajka

Theme by Anders NorenUp ↑