.─[ plasma ]────────────.
┌─────────────────────┐
                     
                     
                     
                     
                     
                     
                     
                     
                     
                     
                     
                     
                     
└─────────────────────┘
'─[ asciiart.eu ]───────'
Random tech banter I
~ Erdem Hanay
──[ VOL.3 :: tech banter I ]─────────────────────────────────────────────────//─
──
    :..........................................................................:

My tech preferences:
First of all, if needed
I can work with all of them.
I actually like all of them.
Its like making a choice
between puppies or kittens.
I like both of them
but I prefer kittens.
And chihuahuas I mean
I guess I can tolerate them.
My tech preferences follow suit.

──[ 0x00 dislike ]──────────────────────────────────────────────────────────//──
─

What I dont like;
Firstly I wanted to write
about the stuff I didnt like
as there are very few things
I am not fond of.

──[ 0x01 vibe ]─────────────────────────────────────────────────────────────//──
─

Vibe coding.
Its good for MVPs
and repetitive work
(routing, page content positioning,
content translation or
centering a goddamn div and
IDRK if its a good idea but
SEO keyword generation +
REGEX REGEX REGEX because
I dont believe anyone actually
knows how to write REGEX
like I think aliens invented that).
Also I am not going to lie
it is always open on the side
for me to ask questions to it
(I am embarrassed about
how many times I asked
"how to comment on css" to gemini,
or copy paste my code to claude
and prompt "fix this!").

But there are things
you shouldnt do with AI
(unfortunately sometimes
the client asks for them,
or you have to do them
for deadlines sake):
website component design
(all of them look the same at the end),
content writing
(its very obvious),
image creation
(come on now!).
I wont lie I did all of this.
I actually unfortunately vibecoded
some static websites at the start
because of deadlines and
I needed money on short notice.
Its just the reality of the work we do
and we should be honest about it.
You can prolly guess which ones.

──[ 0x02 never ]────────────────────────────────────────────────────────────//──
─

But there are things that you
should NEVER use AI for;
|-- System Design
(you can use AI to research but
its always better to read the docs
btw I recommend draw.io
for quick diagrams)
|-- Authentication (NEVER EVER EVER NEVER!!!!)
|-- AUTHENTICATION (NEVER)
|-- AuThenTicATioN (nope)
|-- Database schemas
(I actually did this with AI before
but I checked the code really carefully
and wont recommend it tbh)
|-- Databases and database
adjacent thingies (just dont do it)
|-- Caching
(it just creates a whole lot of problems ngl)
|-- Middleware, CSP etc.
(If using vercel just read the docs tbh
its not that hard and nearly no repetition
so AI is not really needed)
|-- Unit Tests
(I heard you can use AI reliably here
but IDK it is to test reliability and
should be precise so I dont prefer AI here
but I might be mistaken ngl)
|-- Integration Tests
(just write your own or test manually
if the project is not complex
I actually wrote integration tests
just for one project you can
prolly guess which one)
|-- Git
(dude just learn it or like me at the start
use your IDEs github GUI interface)
|-- Deployment
(automation ok, I never automated
deployment so IDRK, but deployment
itself naaahh IDEK how you would
vibecode deployments tbh)
`-- Human relationships
(yeah definitely she had narcissism hmhm,
yeah you were right to lash out hmhm)

I am so glad AI doesnt know
about my personal life.
I think this might actually
cause some psychosis in people.
As one might say "cyberpsychosis" :)

──[ 0x03 typescript ]───────────────────────────────────────────────────────//──
─

Moving on from AI to
other things I dont prefer.

Controversial but typescript *gasps*
or more specifically using
typescript for every project.
If building a complex system
yes it is necessary.
Also it took me a ridiculous
amount of time to discover zod damnnn...
I wish I knew earlier maybe
I would have liked typescript more.
Just those type errors and
the manual labor for all of them.
VERY UNPOPULAR OPINION
but we dont have to use
typescript for everything.

──[ 0x04 javascript ]───────────────────────────────────────────────────────//──
─

Now next up is obviously
javascript itself.
Damn dude created the whole
language in 10 days.
Then added it to ECMA then
the dudes who control the internet
(?who and how??? maybe IEEE? IDK)
said like "lets not divide
how we do things here"
(if they knew the amount of
frameworks we have today
they would lose it ngl)
and said yeah this our
main one right here.

Javascript is the worst language ever
after joke ones like "brainfuck" and stuff.
At least those esoteric ones
are either jokes or cool concepts
but javascript is just a pain in the ass
(pardon my french).
I am not even going to get into
the actual details of why I have
resentment towards javascript on a
technical and humanitarian level.
I dont even wanna talk about
the type shit but..
just look at this:

"0.1 + 0.2; // 0.30000000000000004"

Like computers have limited
ability to compute right
and normal computers are actually
not really good at precise math
IF NOT CONFIGURED TO IT BY HAVING
MORE THAN ONE TYPE OF NUMBER.
Meanwhile the "perfect" programming
language that is javascript has only
one damn type of number which is
"double precision 64-bit
IEEE 754 floating point number".

Now the technical people
who read this noticed something:
"64bit floating" the floating part
has only 64 bits so it starts
tripping after a while like u expect it to do,
but now the real frustrating part:

"0.1 + 0.2 === 0.3; // false (it evaluates to 0.30000000000000004)"

The damn language didnt optimize itself
so IT CANNOT DO GODDAMN
FLOATING POINT ARITHMETIC MATH!!!
Which is something a 9 year old can do.
I am so passionate about how much
I hate Javascript I can write a whole book on it.
But unfortunately it is the language I know the best.
+ it compiles to machine code so
it is like aight for general I guess.

But my monkey brain does not
understand something tho.
Why does it do it in JIT?
Why not, like C or Rust,
it doesnt do it AOT?
I guess one of the many mysteries
of the century is this
godforsaken programming language.

You might be wondering why
I didnt mention that typescript
first compiles to javascript then
it compiles to machine code so
typescript has one additional step,
creating latency in the process due to JIT.
The answer is IDC.
We aint building whatsapp,
those comparisons are more relevant
for more complex systems.
I just care about what works and what doesnt.
Just like the FLOATING POINT ARITHMETIC
MATH THAT DOES NOT WORK!!!!
(btw I dont know how people wrote
physics simulations with javascript
before typescript ngl it feels impossible
due to this but I might be wrong).

Other than that due to me not knowing
a lot of languages I dont have a
dislike for any other language.
Maybe Go or something IDK because its google,
plus I dont like the letter "G".
It is a stupid letter.

──[ 0x05 other ]────────────────────────────────────────────────────────────//──
─

Other things I dont prefer:
|-- Sanity headless CMS.
I actually think this is a pretty decent option
but because I worked with it for over a year
I just dont like it anymore.
|-- Website builders.
No need for explanation.
|-- Hackers (This is general speak,
real ones are good but most hackers are lame).
Like bro why you stealing grandma e-mail.
|-- Non-technical people not understanding
what I am saying.
I love them but come on
some questions I get are abysmal.
`-- And finally birds chirping love songs
to each other in the morning.
They remind me of how lonely and tired I am :(

──[ 0x06 love ]─────────────────────────────────────────────────────────────//──
─

The things I love:
It going to sound cheesy but all of them.
But some things I really LOVE are:
|-- Namecheap: It really the best.
|-- Python. This the one that can be used everywhere.
Data Science, backend, cybersecurity, cooking, cleaning.
Its like the perfect answer to
"oh I dont know which tech stack
I should use for this project?" or
"I know I need to use Rust for the best performance
but learning curve is very steep."
(I actually tried to write my own OSINT suite
and failed miserably I wont get into much detail
it had 2 iterations with 2 completely different
architectures and in the first one I thought that
I should have used Rust but my brain and willpower
was not strong at the time so I used python instead
still failed but well learned a lot).
|-- I WANT TO LEARN BEAM + ERLANG + ELIXIR + PHOENIX!!!
They are like my celebrity crushes.
|-- YAML config system, I prefer this over TOML
even for python and I dont know why but thats
the situation maybe its because I used YAML before TOML.
|-- ARCH and KDE Plasma of course.
|-- Proxychains
|-- Thunderbird, its the easiest way to control
and manage multiple e-mails in my opinion
and works great on Arch.
`-- The threeway handshake: SYN ACK/SYN ACK
seems like a cool dab the server and client does
before communicating to each other.

──[ 0x07 bugs ]─────────────────────────────────────────────────────────────//──
─

And like everything else as well....
I like all of them, even the bugs.
A horrible partition error taught me
so many things about arch
I can speedrun the whole process now.
Using CSR instead of using SSR or SSG
and not utilizing a full stack framework
and just using Vue and brutally butchering my SEO score
taught me SSR and Next.js.
Configuring the domain itself correctly
but configuring the DNS incorrectly
and the website working on the URL
but not indexing on google
taught me a lot about DNS...
because to never make the same mistakes
you research thoroughly.

So yeah I love all of it.
Aside from french people like
the way yall be writing differential
is even weird.
I was surprised and confused when
I first saw lagrange Math NGL (still confused).

    :..........................................................................:
──[ EOF :: vol.3 / banter ]──────────────────────────────────────────────────//─
──