otsch (Christian Olear)'s Avatar

otsch (Christian Olear)

@otsch.codes

Web Developer, PHP enthusiast. Open source PHP packages: https://www.crwlr.software @crwlr.bsky.social Working on a web crawling and scraping SaaS @ https://www.crwl.io (sign up for beta)

163
Followers
215
Following
139
Posts
14.10.2023
Joined
Posts Following

Latest posts by otsch (Christian Olear) @otsch.codes

Why is scrolljacking still done?! Hate it!

26.01.2026 08:24 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈

15.10.2025 12:39 πŸ‘ 0 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

I always start by writing a "SELECT FROM x WHERE y" and afterwards replace the "SELECT" with "DELETE" πŸ™‚

14.10.2025 06:04 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

So, I tried forwarding one of the emails to the platform’s support. And right after hitting send, my mail provider notified me, that they're now blocking outgoing mail from me, because it looked like I was sending spam πŸ˜‚πŸ€¦πŸΌβ€β™‚οΈ
Luckily I could unlock it myself, but wow, that escalated quickly πŸ˜…
2/2

23.09.2025 11:35 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Today I got 2 phishing messages via the DM system of a freelancer platform.
Tricky to spot, because the DMs are delivered as legit emails from the platform itself.
The only giveaway: a shady short-URL. If they had registered a lookalike domain, I’d probably have clicked.
1/2

23.09.2025 11:33 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Great read! πŸ€–

04.09.2025 12:17 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Laravel & Flutter Vienna go LINZ - Friday, September 5th Join Laravel & Flutter Vienna on Friday, September 5th in Linz at Brauunion, followed by Ars Electronica Nightline. Connect with PHP devs in Austria!

πŸš€ Laravel & Flutter Vienna go Linz!

On Friday, September 5th, a big PHP/Dev community meetup with folks from Vienna, Salzburg, and Upper Austria is happening in Linz! Join us for tech talks, beer, and the Ars Electronica Nightline afterwards!
πŸ€“πŸ’»πŸ₯³πŸ»πŸ­πŸ‘¨πŸ»β€πŸŽ€

πŸ”— www.phpeople.at/events/larav...

20.08.2025 10:57 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

It's pretty much like when they discovered radioactivity and produced radioactive toothpaste and things like that πŸ˜…πŸ™ˆ

20.08.2025 10:52 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

Made it to 10,000 installs of the crwlr/crawler package! πŸ₯³πŸ’ͺ🏻
Here’s to the next 10,000! πŸ₯‚

31.07.2025 17:58 πŸ‘ 0 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

I think that rule is not only valid for juniors, but for devs in general: don't use code you haven't read and fully understood.

08.07.2025 11:37 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

PIE, the new PHP Extension Installer is 1.0.0! πŸ₯³πŸ’ͺ🏻

17.06.2025 16:12 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Christian Olear (Otsch) – Freelance Web Developer – Linz (AT) Christian Olear (Otsch) is a freelance web developer based in Linz (AT). Focus areas: (SaaS) web apps, PHP legacy projects, and web crawling & scraping.

πŸ§‘β€πŸ’» I’m open for freelance projects!

Complex custom Web apps, APIs, Web crawling/scraping - PHP-focused 🐘, with many years of experience πŸ‘΄πŸ»

More + CV: www.otsch.codes

Feel free to share!

16.06.2025 13:39 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

Because they had large Perl legacy applications or...?

10.06.2025 15:11 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Valid points πŸ‘πŸ» Still, imo the main argument is: you need to understand the code being generated - especially if real users rely on your app. Even manually well tested apps can break unexpectedly. If you’re not a dev, you’ll have to hope AI can fix it.
Great for mockups and throwaway apps, though!

09.06.2025 19:03 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

German Wolf Association...interesting! 🐺
I tried Perl at first too, but had no guidance and couldn’t even get a simple β€˜Hello World’ running at that age. I quickly stumbled upon PHP, which made getting started so much easier! 🀩🐘

09.06.2025 14:37 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

PHP turns 30 today! 🐘πŸ₯³
My story with PHP started about 25 years ago, when I was 13, coding a guestbook πŸ˜…
When did you join the party?

08.06.2025 09:17 πŸ‘ 6 πŸ” 2 πŸ’¬ 2 πŸ“Œ 0
Preview
European Citizens' Initiative Give your support !

Friends who are EU citizens, please consider signing this initiative against conversion "therapies":

eci.ec.europa.eu/043/public/

About 400,000 signatures are still needed in just a couple of days. I think it's possible! Sign!

15.05.2025 06:49 πŸ‘ 23 πŸ” 20 πŸ’¬ 2 πŸ“Œ 5
Post image

πŸ₯³ Looking at the votes, it seems like we’ll have a Pipe operator in PHP 8.5

wiki.php.net/rfc/pipe-ope...

#php

14.05.2025 09:34 πŸ‘ 47 πŸ” 5 πŸ’¬ 6 πŸ“Œ 4
Preview
parse_str - replacing dot and space with underscore in keys Β· Issue #8639 Β· php/php-src Description I just remembered this behavior when using parse_str(), that dots and spaces in query string keys are replaced with underscore, for the reason that those aren't allowed in PHP variable ...

I created this issue a few years ago github.com/php/php-src/...

Also have a package github.com/crwlrsoft/qu... (also used in github.com/crwlrsoft/url) which solves the issue and therefore also became a dependency of bref (github.com/brefphp/bref...).

12.05.2025 21:52 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

Just found that I still have this bag πŸ˜…
Anyone else been there?

12.05.2025 10:14 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
A mirror selfie of myself in sportswear and a Shirt saying "Run PHP" on it. It looks like the logo of the Hip Hop group Run DMC.

A mirror selfie of myself in sportswear and a Shirt saying "Run PHP" on it. It looks like the logo of the Hip Hop group Run DMC.

When I go for a run! πŸƒπŸΌβ€β™‚οΈπŸ˜πŸ˜…

08.05.2025 10:04 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Reached some install milestones for the crwlr packages πŸŽ‰
- url passed 50,000 installs
- query-string is at an unbelievable 3,000,000 installs (thanks to bref!)
- robots-txt is approaching 15,000
- crawler will soon reach 10,000

Thanks to everyone using and supporting the packages! 🫢

07.05.2025 08:09 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Post image

First talk β€žSo, you think you know PHPUnitβ€œ by Sebastian Bergmann πŸ€“

06.05.2025 17:27 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Oh sorry, it's "ViennaPHP ❀️ Laravel Vienna"!

06.05.2025 10:49 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
ViennaPHP ❀️ Laravel Vienna x Sebastian Bergmann, Tue, May 6, 2025, 6:30 PM | Meetup Fellow PHP artisans! YES, you've read the title right: Sebastian Bergmann is nice enough to stop by on his way to ComoCamp. Let's come together for talks, pizza and drinks,

Looking forward to see Sebastian Bergmann and other great speakers and people at the Laravel Vienna Meetup later today! πŸ™‚πŸ€“πŸ₯³
www.meetup.com/laravel-fram...

06.05.2025 10:46 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Imho, registrars should make it way easier to have nameservers/DNS set up correctly before the transfer. Or actually make it hard to mess it up! Suggest importing the current DNS records or nameserver - shouldn't be that hard, right?
5/5

24.04.2025 11:16 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Whois now shows the NS change, but I'm still waiting for the browser to realize it πŸ™ˆ
Has anyone ever transferred a domain to a different registrar without downtime? Is that even possible? πŸ˜…
4/5

24.04.2025 11:16 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Opening Dev Tools, I saw the HTTP request for saving the NS change actually returned a 500 error. But nothing was shown in the UI! πŸ™ˆ Holy crap… After that, I waited for their support for 20 minutes, and then it took another 30 minutes to finally resolve the problem.
3/5

24.04.2025 11:15 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

…and it looked like it worked. I hit "save" and there was no error shown. But as my site was still down after a while, I got a bit skeptical. So I went back to the registrar's admin tool and noticed the nameserver change hadn't worked at all.
2/5

24.04.2025 11:15 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

I just transferred a domain to a different registrar. My DNS records were already managed at a different provider, so I just wanted to point the domain to those nameservers again. I was prepared for a little downtime and immediately tried to change the nameservers after the transfer was done…
1/5

24.04.2025 11:14 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0