HNHacker News
TopNewBestAskShowJobs

drinchev

3,581 karma · joined October 4, 2011

Freelance web developer, based in Berlin.

http://www.drinchev.com

[ my public key: https://keybase.io/drinchev; my proof: https://keybase.io/drinchev/sigs/DoNkf0DJhCHcuXXwrX-M5M-qqQV3NqJQJO518YFb8zY ]

submissionscomments
drinchev··on AWS multiple services outage in us-east-1
Also npm audit times out.
drinchev··on Ask HN: Are tech layoffs happening abroad?
Note that we also had COVID and shifted to remote gigs in Germany. This means that we compete with people located in smaller cities or even villages which probably have a pretty good pay rate bump.
drinchev··on Ask HN: What's the current job market and sentiment like for outsourcing shops?
As a contractor, based in Berlin, I also noticed that since the end of last year the market slowed down.
drinchev··on Is it time to open source SublimeText?
Sublime Text editor is my day-dreaming destination when I feel depressed of work. It makes me really happy that 2-3 people can actually build something, sell a piece of it in an non-disturbing way, and do this for a living.

It's also one of the best shareware models ( Is this even a word these days? ), that I've ever stumbled upon.

Keep up the good work, folks!

drinchev··on How to start a React Project in 2023
> bleeding edge tech solves many problems ...

> which day to day tech workers working on internal B2B do not face

That's so true. Good luck explaining to management that the front-end app needs additional cloud resources, such as a server, so we are on the edge of the trend with SSR.

Most apps behind a login face tough architectural / security meetings, defending SSR for their use-case.

drinchev··on SVBUK Taken in to Insolvency
Wow. I hope this won’t spread further. Looking at DAX, Deutsche Bank shares dropped as well as HSBC.

When I first read the news, I thought about another hit for the crypto, however looking at what happens I’m a bit worried where will the avalanche reach next Monday.

Stay safe folks!

drinchev··on Script Kit: cross-platform, scriptable, automatic shortcuts to everything
This looks cool. However I was looking for a better “Alfred” on my Mac and found https://www.raycast.com/.

Seems like it’s not an electron app, but also works with JS and even React.

In case someone is using both. What are the Pro/Cons against Raycast for ScriptKit?

drinchev··on Why to not use JWT (2021)
What I'm pissed about is that everyone hopped on the JWT train too fast a couple of years ago.

Now it's really hard to argue with architects / developers why cookie authentication / bearer token makes more sense than JWTs.

drinchev··on Why to not use JWT (2021)
As explained in the article, if that's the case then you can't really trust the JWT anymore only for it's cryptographic signature and you rely on an internal store entry that makes the token valid / invalid.

This makes no benefits as to bearer token or any random string that the server "knows" is a valid authenticated request via internal store, like a DB.

drinchev··on No amount of alcohol is good for the heart, says World Heart Federation
Well I think there are far more dangerous substances than alcohol which are considered legal and advertised.

Eating sugar for example in excessive amounts leads to way worse diseases - https://www.webmd.com/diabetes/features/how-sugar-affects-yo....

drinchev··on Software Infrastructure 2.0: A Wishlist
There is hardly an app that I use these days that doesn't require internet connection. I guess once your app needs it, you will have the same problems.
drinchev··on Use console.log() like a pro (2020)
Fun story explaining this to the PR reviewers though :D
drinchev··on Use console.log() like a pro (2020)
Yeah I don't remember how I found about this, but I remember it involved some `console.log(JSON.stringify(...))`. It's tricky to notice.
drinchev··on Launch HN: Infracost (YC W21) – open-source cloud cost estimator
Really nice design of the home page! Do you folks use a template for that or you built it in-house?
drinchev··on Bad TypeScript Habits
Btw in this context I would like to share Type Fast by sindresorhus [1].

I find it excellent and definitely a helpful tool to think about when you are struggling with type safety vs runtime data.

1: https://github.com/sindresorhus/type-fest

drinchev··on js;dr = JavaScript required; Didn’t Read.
> You could certainly build Facebook as a fully server-rendered PHP app, but that would hurt Facebook's business because its servers would need to do more work and its users would have to wait longer for content.

I think they do that mostly because for the users who’ll have to download the header 100 times for each action they’ll do. Not really sure that all benefits from SPA are hidden in company costs. Mostly they are in modern tech approach.

Writing this I still agree with the article. SPA is needed when you are under authentication but publicly you can live with progressive web.

drinchev··on Minimal Base.html
I'm used to call this HTML5 boilerplate. So that's the way I google when I actually need something like this.

https://github.com/h5bp/html5-boilerplate/blob/master/src/in...

drinchev··on I've walked away from software development
34 and I feel pretty happy freelancing. Freelance IMO is closer to real life for most of the devs I’ve talked to. You are not committed to bullshit, often excluded from company brainwash meetings and actually getting paid by the hour, so you can manage the amount of “life you sell”.

Mentioning corona here, I think the society is desperate to find more IT folks around and loosing someone because of shitty interview process ( which I mostly skip because I’m a freelancer ) is quite sad.

drinchev··on Switching from Vim to Intellij
As a longtime WebStorm user I would really appreciate a WebStorm + let’s say PyCharm vs IntelliJ. I’m a bit happy by the default configuration of each dedicated IDE, rather than clicking around in IntelliJ and fix stuff. What’s your opinion on that?
drinchev··on Laid Off, Now What?
Probably my 1 year old daughter talks right now, but I really have no time to do stuff on the weekend. I'm happily not living with a visa though, but still I think if you don't have enough time, you can always "spend" some career achievements and go to a less paid gig. When the market recovers your career will recover too.
drinchev··on Show HN: Hacker News front page in the style of a print newspaper
Thanks for that. Really appreciate the answer.

I remember having similar struggles with infinite-scroll product page a while back ( ~5 years ago ), with variable card height. I thought this could be done with CSS nowadays, but I guess css grid & flex-box specs don't go that far.

Awesome work!

drinchev··on Show HN: Hacker News front page in the style of a print newspaper
I know that the OP probably did the research, so I'm just going to ask :

Isn't this possible with only CSS?

I see each article ( section ) with position absolute and heavy JS calculations. My browser brain thinks that with some combo of flex-box / flex-wrap and breakpoints you could achieve this without the need for resize handler. I guess that's not the truth

So can you point the struggles not doing this with CSS?

drinchev··on How we test the TeamCity UI
The snapshots part is something that I completely disagree.

> Here, we change the engine type from turbofan to propfan. Just to test how it works. Since the new engine no longer matches our snapshot, the test fails. We’ve got a report, and our engineers are on their way to investigate the problem.

I would be really happy if I know that the onboard computer has tests that checks if the engine being used is compatible before it takes off.

IMO, tests in general should be as close as possible to the real use-case ( kudos for the screenshot testing ) and as far as possible from the implementation. What happens with snapshots is that you are bound to the implementation. Maybe I have a logic somewhere in my code that does s/propfan/turbofan/. Would a user be interested in that or the functionality itself?

We ditched all JEST's snapshots statements in our code-base, because of code-coverage abuse and false sense of "being safe" just a couple of months ago. It was a good decision that helped us be closer to "what the user sees" rather than "what the markup should be"

drinchev··on Show HN: Aviary.sh – A tiny Bash alternative to Ansible
> Installation

> curl https://aviary.sh/install | sudo bash

I would really try to avoid this, especially when it's targeted for sysadmins ( I guess DevOps nowadays ).

What's the big deal of having this instead :

> $ wget https://gitlab.com/dchester/aviary.sh/-/archive/1.3.2/aviary...

> ./aviary-install.sh

drinchev··on Make your 404s into 302s
Same happened with me. Here is the idea :

> Here’s the simplest solution I could come up with:

> 1. Serve the current site from a subdomain (e.g., 2017.ar.al)

> 2. Make my 404s into 302s that point to the previous version of the site.

> 3. If I change the site again in the future, rinse and repeat.

> I call the technique 404 to 302.

drinchev··on A one-line package broke `npm create-react-app`
Oh, the irony ... https://www.npmjs.com/package/is-falsy
drinchev··on A one-line package broke `npm create-react-app`
Yeah, but the question is how far should we go with that. Should we do :

    const isFalsy = require("is-falsy");
    const isObject = require("is-object");
    const isFunction = require( "is-function" );
    const hasThen = require( "has-then" );

    function isPromise(obj) {
      return !isFalsy(obj) && ( isObject(obj) || isFunction(obj) ) && hasThen( obj );
    }
Just because the code line is more than 50 characters, doesn't mean that we need a new library for that.
drinchev··on Bootstrap v5: drop Internet Explorer support
I'm even not sure what an average experience on IE11 would be for any users.

I push as much as I can to POs / stakeholders to just disable non-critical features on IE11 and just leave the basic functionality.

I doubt anyone using IE11 likes that fact, so sounds good to give them just another reason to complain about their experience to their superiors. I will definitely never see "The product that just works on IE11" as a slogan, so being competitive in this won't be reasonable argument.

drinchev··on The Virus Can Be Stopped, but Only with Harsh Steps, Experts Say
Back in time ( end of January ) when I heard the news about Wuhan and what happened there I was a bit worried, but always positive. When the virus spread in Italy ( I live in Berlin ) I was daily asking "Why don't they stop people from / to Italy?", "Why don't they go and help Italy?", "Where is a plan for handling the situation?", "Why nobody knows >how< to handle the situation, don't they see how China managed?"

All in all the answers were : "They don't want to kill the economy, that's why no restrictions.", "We are democracy, that's why no restrictions."

Look at the situation now. Killed economy, unstoppable virus and nobody knows for how long. They can't contain it anymore. What we do is flattening the curve, not eliminating the thread.

Come on. These politicians, IMO should be investigated for committing crime agains humanity. I can't believe that in 2020 there is no such thing as emergency procedure / plan in case of ... well ... emergency. I tend to think that all government decision makers make a "daily" for what should happen today and then wait for tomorrow, with no further planning.

That's just irresponsible.

drinchev··on JWT is Awesome
So where do you store the ones that should not allow to be refreshed? How short lived they should be in case of "Reset Password" scenario, when you need to kick out malicious user?
Page 1 of 30Next →