HNHacker News
TopNewBestAskShowJobs

imran-iq

378 karma · joined November 4, 2021

submissionscomments
imran-iq··on Chuwi Minibook X
Hey I also have the pocket 4, the screen rotation issue should be fixed soon (slash already fixed): https://github.com/systemd/systemd/issues/41036
imran-iq··on Ask HN: Who wants to be fired? (February 2025)
https://www.youtube.com/watch?v=LT_dFRnmdGs
imran-iq··on Google employees pressure execs at all-hands meeting for clarity on cost cuts
That's just blatantly racist. As a counter example look at kitty which is pushing terminal standards forward which is written by an Indian
imran-iq··on Microsoft: Linux Is the Top Operating System on Azure Today
Licencing exists for enterprise support if you want or need it, but it is absolutely not required for linux unlike windows.
imran-iq··on Microsoft: Linux Is the Top Operating System on Azure Today
Microsoft also charges per core for a licence, linux does not
imran-iq··on Building a SaaS product with Htmx – Are you sure you need all the complexity?
> some sort of user signup/signin/forgot password auth and cookie/token flow. Django does not include anything for this and leaves it to the user to work out

But it does: https://docs.djangoproject.com/en/5.0/topics/auth/default/#m...

imran-iq··on Emacs Microfeature
vim has that too with gw

https://vimhelp.org/change.txt.html#gw

imran-iq··on Show HN: Kyoo – Self-hosted media browser (Jellyfin/Plex alternative)
I think (and I could be misremembering here) is that Emby started off as C# and both Plex and Jellyfin are forks of it. Also a lot of folks in this sphere seem to be on windows as their primary platform, and C# along with visual studio is pretty on that stack
imran-iq··on WTF Ubiquiti
https://help.ui.com/hc/en-us/articles/12594679474071-Standal...

Does it mention that the AP's will spam network requests with or without a controller on that page?

imran-iq··on WTF Ubiquiti
Anyone know any alternatives in the prosumer space? Mikrotik?
imran-iq··on YouTube begins new wave of slowdowns for users with ad blockers enabled
If you want a N=1 "study" https://blog.imraniqbal.org/advertising-works/
imran-iq··on Tracking developer build times to decide if the M3 MacBook is worth upgrading
Is that screenshot at the end real? 27 thousand pounds for a machine with only a 1 TB ssd?

Edit: Nvm didnt see the quantity 10

imran-iq··on Cold-blooded software
Python is a really bad example of cold blooded software. There is constant breaking changes with it (both runtime and tooling). So much so that the author still has to use python2 which has been EOL'd for quite a while.

A much better example would be something like go or java where 10 year old code still runs fine with their modern tooling. Or an even better example, perl, where 30 year old code still runs fine to this day

imran-iq··on Go Testing by Example [video]
See also Advanced Testing with Go by Mitchell Hashimoto[0]

---

0: https://www.youtube.com/watch?v=8hQG7QlcLBk

imran-iq··on Bitwarden adds support for passkeys
That's really a shame, I know keepassxc has (recently) added support for passkeys, but does it also support import/exporting them? I only found this comment[0] in the github issue.

EDIT: According to the pr[1] it does support import/export

---

0: https://github.com/keepassxreboot/keepassxc/issues/1870#issu...

1: https://github.com/keepassxreboot/keepassxc/pull/8825

imran-iq··on Mozilla treats Debian devotees to the raw taste of Firefox Nightly
> creating .desktop files and their syntax? Not so much

This took me less than 2 seconds to find.

https://specifications.freedesktop.org/desktop-entry-spec/de...

imran-iq··on Banging errors in Go
You should try reading the source code and you will get your answer. NewReader[0] calls Reset[1], which calls readHeader[2], which the name should tell you what its doing.

---

0: https://github.com/golang/go/blob/go1.21.3/src/compress/gzip...

1: https://github.com/golang/go/blob/go1.21.3/src/compress/gzip...

2: https://github.com/golang/go/blob/go1.21.3/src/compress/gzip...

imran-iq··on Ask HN: Where to Host a FastAPI App
Or you could use caddy from the get go
imran-iq··on Flexport is laying off 20% of its workforce
So shopify cut its logistics to flexport, who are now cutting 20% of its company. Must be really shitty to anyone unlucky enough to go through that :(
imran-iq··on Passkeys are now enabled by default for Google users
What are the vendor options though? (I think) its Google, Apple, Microsoft, Yubico and 1password? None of which support exporting the keys as per other comments in this thread.

Also (i think) none of them are open source?

imran-iq··on Strong static typing, a hill I'm willing to die on
> My typing however, is very fast.

This is because you can remember where the keys are.

> For Haxe, I thought it was not a method so I think it's either part of Std or StringTools.

How would autocomplete help you here? If you need to know if it was a global function or else where? This is learned knowledge that is available through the proper docs and not through autocomplete. This is how you know not to look for a global function. The difference is that instead of reaching for autocomplete to try and fill in the gap, I go to the documentation. I basically share the same feelings/experience with this comment[0]. Either I know what I am doing and I do not need autocomplete, or I need to learn in which case autocomplete just gets in my way and I would rather go to the docs.

I know I am not alone in this, for example I watch the lead developer of pidgin, Gary Kramlich, on twitch[1]. He does not use autocomplete, any time he has to look something up, its straight to the docs.

Similar with Jonathon blow[2], who is working on his own game, game engine, and language who just uses emacs (with no autocomplete) and visual studio for the debugger.

And even Mitchell Hashimoto[3], who has a similar workflow of using a dumb editor and then going to the docs when needing to learn.

> I can also see the documentation on the parameters. Is the second parameter an index or a length?

The documentation on a per function basis does not contain enough information on how to use the library/framework. Take for example django's QuerySet aggregate function, would you learn enough from reading the function documentation here[4] on how to use it or from the actual documentation here[5]? Autocomplete wont give you anything close to the latter.

> Also, if you work in a big codebase, you can't know every class.

The classes you don't know are just one "goto definition" away.

> Needing to dig through code seems such a waste of time.

Needing to juggle through the autocomplete menu is a waste of time as you need to know _something_ for it be useful. It doesn't help you when you know _nothing_. I'd rather just go straight to the documentation or code.

---

0: https://news.ycombinator.com/item?id=37768953

1: https://www.twitch.tv/rw_grim

2: https://www.twitch.tv/j_blow

3: https://www.youtube.com/watch?v=rysgxl35EGc

4: https://github.com/django/django/blob/main/django/db/models/...

5: https://docs.djangoproject.com/en/4.2/topics/db/aggregation/

imran-iq··on Strong static typing, a hill I'm willing to die on
I also don't like autocomplete. The reason being that not having it actually forces me to learn the libraries I am using.

> You know everything by heart?

You eventually reach that point. Do you still look down to see which keys you are typing?

This is also has the nice side effect of pushing you to use libraries that are stable and have good documentation as you can always reference them if need be.

imran-iq··on Reorient GitHub pull requests around changesets
It's the email flow that's existed before gerrit and phabricator. Both of which implemented because it makes sense. Then github came along and here we are.
imran-iq··on Mullvad on Tailscale: Privately browse the web
> If you fully disabled password authentication

It is not fully disabled, my dads account has a password for sftp.

Its covered more in part 1 (linked at the start of the blog post) but the repeated attempts at ssh'ing into my server actually killed sshd (which is how I found out about it).

The other problem is that this "server" is hosted on a residential connection in my computer room. This is just something I don't want to deal with and using a VPN fixes that since I do not need to deal with it, and its easy enough for my dad to use

imran-iq··on Mullvad on Tailscale: Privately browse the web
Just my 2cents that I wrote about here[0]. It boils down to:

1. Ease of use for non technical folks (my dad in the post)

2. The dangers of having an exposed ssh port (even on non standard ports)

I just don't have the time or compute to constantly tweak my security settings for a publicly exposed port, so the easiest way to solve the problem is to not have the port publicly exposed

---

0: https://blog.imraniqbal.org/tailscale/

imran-iq··on Using lei, b4, and mutt to do kernel development (2021)
> by instituting a GitHub based workflow to track patch status, but not everybody uses this.

The problem with using GitHub is that you are now at the whims of the US government[0]. If you have contributors in a sanctioned country they are not cut off from the project and their accounts. By pushing for GitHub you are signalling that you don't want free software, you only want "free for western countries" software

The nice thing about emails is that anyone can send an email. There is no third party account sign up needed.

> I used to configure mutt to use imap and connect to Gmail directly, but gmail has gone out of their way to make imap as shitty as possible

That's the other big problem is that gmail (hotmail too) just sucks for email. Personally I've switched to fastmail and have no issues with imap/isync/offlineimap.

---

0: https://techcrunch.com/2019/07/29/github-ban-sanctioned-coun...

imran-iq··on UltiSnips – Snippet Solution for Vim
One of these things needs an internet connection to function. The other does not.
imran-iq··on Lessons From Linguistics: i18n Best Practices for Front-End Developers
Good news is folks are working on better tooling, for example fluent[0] by mozilla. The bad news though is adoption.

---

0: https://projectfluent.org/

imran-iq··on Vimspector – the Vim debugger rules all
The actual title is "Vimspector - A multi-language debugging plugin for Vim".

It is a UI around DAP: https://github.com/puremourning/vimspector#what-vimspector-i...

imran-iq··on Shopify employee breaks NDA to reveal firm replacing laid off workers with AI
But what if it is the credit card company you are dealing with?

For example I wanted to cancel one of my credit cards. There was nothing in their FAQ's that mentioned anything around "canceling". There was nothing under "Account options" or any logged in setting menu. There was no chat/support on their webpage. They only have a phone line you can call. The phone line is completely automated, and has 2 menus to go back and forth, with no option to speak to a real person. You listen to the first menu, nothing is related to speaking to support or canceling a card. You listen to the second menu, same thing. You go back to the first menu, just to make sure you didn't mishear anything. The call disconnects because you took too long to figure out an option, Eventually you figure out you have to choose one of the options, then spam invalid input.

This finally gets into holding for a real support person. Unfortunately turns out all their agents are busy at the moment and there is a greater than 10 minute hold to get a support agent. If you would like you could hold your place in line and they will call you back when you are ready to take the call. You think to yourself, "sure why not?", and the call ends.

You get a call from their automated system 20 minutes later. It is finally your turn to speak to a human. An automated voice says: "Press 1 to confirm you are ready", you press 1. Nothing happens. The message repeats. You press 1 again. Yet again the message repeats. You spam press 1, the call ends.

You call the automated line again. Go 1 option deep and spam numbers again, get put into holding. This time you do not opt to have your place held in line. Shitty and horrible compressed music blasts into your ear. After about 20 minutes, you get a person. You explain you're canceling, support agent goes through the usual walk through and finally cancels your card.

Page 1 of 4Next →