katet's comments

katet | 6 years ago | on: Janayugom, a Indian daily newspaper, has migrated completely to Free Software

They are particularly horrendous..I've had the misfortune to work with government-provided PDFs using custom font glyphs in lieu of proper encodings. In some cases this was the only way to encode particular languages/scripts before Unicode (Jawi was my personal experience). There are now better ways, but poorly-exposed operating system support means most people with these needs still have custom fonts as the entrenched method of text entry.

Some of the encodings were so esoteric we resorted to OCR instead to extract the embedded text. It was quite frustrating to know that somebody - somewhere - knew what each octet represented, but it wasn't remotely Google-able (in English, at any rate).

(Tamil was also problematic, and still is, even with Unicode, as I understand it)

katet | 6 years ago | on: Internal Email Shows GitHub Plans to Renew ICE Contract

Ah, crikey. It's always tricky to defend a position against a well-reasoned critique, but I'll try ;)

1) I typed a few answers to this, but I'll simplify. No, it isn't OK. But (please, please understand this is sort of a devils advocate position) clearly it was OK for someone. That was my original point, although probably poorly made..I'm not a master armchair debater, but I think it's roughly about moral absolutism whereas Wikipedia tells me I was describing moral relativism. I subscribe to the view that the holocaust was intrinsically wrong, but if we had lost WWII, then clearly there would be nobody around to argue that case any more.

It's wrong. Supporting or enacting parent-child separation at the border is wrong. But somebody - a percentage of somebodys - find it an acceptable trade off for border control. We are (I think, I pray, I hope) the majority for that opinion. We need to ensure we keep voicing it to keep it that way - that's all we've got right now.

2) I qualified this with the statement that - as I read the article - GitHub is fairly clear that this is not in accord with their values. I think their position in balancing their support of many policies they agree with (counter-terrorism, etc.) with a specific instance in which they don't reasonable. I find donating the profit from that deal to charities reasonable. I don't take that as an indicator that they are OK with this just because it's "democratic". Imagine a hypothetical alternative headline: "GitHub refuses to provide services to counterterrorism agency" (again, I'm not American) - despite what we as commentators think, the choice they face isn't 100% black and white. They can voice their disapproval; if ICE's actions become clearly, majorly more harmful than the value they provide, I hope they revisit this decision. If they have decided - for themselves - that they wish to not censure a government agency for a single (or couple) disagreeable policy, I can understand that. I might not do the same. But such is individual freedom.

3) Again, crikey. I don't know. Only once in my career have I been asked to do something I believed to be a violation of local laws. It never remotely approached the need to resign - Legal issued a clear edict on my side. But I would hope GitHub take the approach I would have wanted: if you choose to resign in good conscience, you serve the full notice period, with pay, and with goodwill. I understand this view is somewhat unpopular, but a company is a legal entity. It is entitled to its own view. That an individual might disagree is a serious issue, not to be belittled, but they cannot reasonably continue to work for a company with whose values they disagree with vehemently. Any issues about an individual's personal life position I find orthogonal to this: if that individual cannot leave because its their own livelihood at stake, I would personally judge that an understandably unpleasant compromise. But I honestly don't think it's the company's responsibility to cater for multiple - conflicting - political or ethical or moral views.

:frustrated_shrug_emoji: everyone must take a stand on their moral positions, unless they reasonably can't. The rest of it seems to be a case of hoping that your particular moral view prevails during the march into the future with another few billion people to compare and contrast with.

katet | 6 years ago | on: Internal Email Shows GitHub Plans to Renew ICE Contract

Now, I actually find this a reasonable way to phrase their position:

> "We respect the fact that for those of us in the United States, we live in a democratic republic in which the public elects our officials and they decide, pursuant to the rule of law, the policies the government will pursue."

(They do go on to say they disapprove, in the interests of quoting fairly)

But to clarify, as a Brit, I feel this way about our own government and Brexit. I disagree with brexit. I disagree with many of our government's actions.

But.

They were voted in. People voted for Boris, they voted for Trump. Even now, the Conservative party is 15 points ahead in some polls.

A small, unlikable part of me says we shall "reap what we sow", but at some point, I'm going to have to reconcile the fact that a large segment of my fellow citizens like what they're sowing.

I don't really have a point to this. It's a shame that as a democracy we vote in individuals who pursue policies that some of us personally find reprehensible. However, I am getting a unique and unasked-for insight into how it must have felt for those individuals with non-PC viewpoints for all those years.

I guess that might be the point: this is the world we live in. Some people find this OK, even preferable. We can't pretend otherwise any more. And that's rather sobering.

katet | 6 years ago | on: 99% of the Git commands you'll need at work, demonstrated in a single script

A couple of random addendums (although these aren't necessarily what you'd use day to day)

git diff --color-moved

(seriously, read through the man page for git diff sometime)

git log -p --all -- <path/to/file>

(I use this with multiple remotes, so I can track changes in my fork and in upstream when looking for context around a file)

git cherry-pick -x

(for automatically adding a reference to the original commit)

A couple more, but I think they're really quite specific to my personal workflow and responsibilities

katet | 6 years ago | on: Pricing niche products

I had no idea :D I just thought they were exceptionally robust, and - ironically - cheap as chips at the time. Now that I think about it, yes, the term "chiclet" clearly contrasts with those older models. I have quite a few buried somewhere, might be time to break out the detergent again ;)

katet | 6 years ago | on: Pricing niche products

Just in case this strikes anyone as dismissive, I too sincerely miss the old, beige keyboards that used to come with things like the old IBM, Tiny, MiTac, and Amiga brands I scavenged as a teenager. And those things were _robust_ - you could strip them down, soak them in detergent overnight, and have them good as new the next day without key caps falling off or the space bar sticking.

katet | 6 years ago | on: Supreme Court: Suspending Parliament was unlawful, judges rule

We've had one, and we're not halfway to the next one. I'm amused to some degree that the idea of another referendum is anathema to some, but the idea of a third election in (almost) as many years is somehow a better idea. If there's another GE now or soon, it'll be the same hung parliament.

katet | 6 years ago | on: CDC says stop vaping as mystery lung condition spreads

Screw it, let's wade into this one briefly (because I've searched and nobody has mentioned this as far as I can see):

I currently live in South East Asia, the land of palm-oil-plantations-as-far-as-you-can-see, and it's that time of year again: slash and burn.

There is so much particulate matter in the air, that you can see the street lights illuminating it, you can't see islands from the shoreline, and schools will be closed this week if gets any worse (smack bang in the middle of the exam period as well).

I sympathise entirely with the view that vaping is not safe, only "safer". I desperately want to know the underlying cause of the CDC cases so I know what to look out for when I buy juice.

But any argument that implies that vaping is dangerous for me, and I should stop - in light of the fact that I am breathing in what is essentially ash on my commute to work - is completely and utterly missing the forest for the trees.

katet | 6 years ago | on: Faster internet is coming, but only for a few

I concur with the sibling comments. I had 30Mbps and it was "good enough", but I know have gigabit at home and its reached the point where its actually quicker for me to work from home when dealing with large production database dumps and trial-and-error Docker pull and build than it is to work at the office.

Its simply a case of when you have it, you find ways to use it, but boy is it one of the small pleasures in life to do a dist-upgrade in about 15 minutes.

katet | 6 years ago | on: The Web We Want

Wow, again, last time I looked at keybase I just remember it being identity verification. Glad to see they're expanding on that.

I am - unfortunately - picky :D as you mention, they haven't released their server code and don't seem particularly interested in doing so (which is their full right). Good thread for that here: https://github.com/keybase/client/issues/6374

I get that some people aren't too fussed if the cryptography is done right, and you could reverse engineer the protocol and interop a la Amazon S3, but...yeah. Just not me I guess.

I'm new to the limitations you mentioned (# of devices, phone no. Auth, etc.). I'll need to take a good look before I jump ship. But first thought is I think I'll take those downsides as part of the current status quo of messaging apps for a fully open platform I can support and possibly get my parents to use without too much trouble (yep, my principles have priorities, lower ones get sacrificed when absolutely necessary ;))

(I lied about the phone sharing bit a little - Nextcloud sync is really good somehow, I just wish there was something like AirDrop for everyone else)

katet | 6 years ago | on: The Web We Want

Just to derail the conversation further, I've had a thought for that too - one I'm working up the courage to build myself :D

I'm going to presume a few things to keep this short: free and advertising-supported, donation-based, and paid for. I'm focussed on the third option.

Ever notice how many new (typically closed) services are "just the price of a cup of coffee a month"? What happens when I want 20 of these "coffee-priced" services? That's more than I personally spend on actual, gourmet coffee a month (of which I buy copious amounts).

I think there's a decent gap for services that cost $/€/£1/month. The volume of subscriptions at that price point might break even with the profitability of higher subscriptions with a lower volume. It might not of course - but I'm tempted to try it. Mail for $1 a month. Not remotely profitable, but with elastic compute and high volume of customers...maybe. With a self hosted option to boot, to lure in the early adopters and convert them when they want to offload the hassle of running the service...

I don't intend to compete with free, but I definitely think there's room for innovation here. I have a day job, but I'd drop that in a second if there was an opportunity to manage a multi-tenant cloud of Nextcloud instances for customers that a) doesn't cost more than DigitalOcean, and b) had other software bundled at the same price point, e.g. Collabora Online, LDAP auth, Mattermost, Mediawiki, etc. etc. All for $5 instead of $5 x n services....

:shrug: maybe I'm too much of an idealist ;)

katet | 6 years ago | on: The Web We Want

I don't want to dismiss what sandstorm is doing. They've been around for a while and they've shown some incredible persistence in pursuit of their vision. I'm also a little out of date since I last checked up on it.

IIRC, one example of the SSO thing I mentioned is exemplified in sandstorm. They either (I can't recall specifics) wrap or fork the relevant projects to make them "fit" within the sandstorm ecosystem. SSO, ACL, and overall storage / permissions are handled by sandstorm, which is why there's a list of supported apps - other apps that haven't been "wrapped" don't integrate with sandstorm APIs so they can't be used directly (I may be wrong now its 2019)

That's...kinda my point. There's OIDC, OAuth, Unhosted, IndieWeb, microformats (repeat ad nauseum) and yet there's still somehow a need to create the XKCD #927 situation (yet another standard). There's already schema.org (OK, Google influence :shrug:), the ActivityPub vocab (still new-ish), RDF / Linked Data etc.

It's not a slight against any of these projects, particularly sandstorm. IMHO the effort and onus should be placed on the component projects to play well with others. GitLab and Nextcloud deserve shout outs for exploring or working on federation strategies that should remove the need for things like sandstorm, but we should keep fighting for and implementing similar things for other projects.

(This discussion is now convincing me to open a second pull request to Wallabag implementing OIDC login)

katet | 6 years ago | on: The Web We Want

I know this isn't quite on topic, but this is not the web I want. I want open services to compete with the entrenched players of free-as-a-service, and I want more interop between these open services. I'm sure HN already gets the gist.

I run as de-Googlified a stack as I can: Nextcloud, DAVdroid, LineageOS, exclusively Linux, a private cloud server, etc. This is for my personal usage - at work, we run the whole Google/Atlassian suite, and I'm (mostly) fine with that separation.

But I positively pine for the ease of use and general UX of the closed services when I go back to my private, open-source stack. A quick case in point: the Conversations Android XMPP client

I'm a Librem 5 backer, and I'm looking forward to the challenge of using it as a daily driver. So I'm looking to wean myself off WhatsApp in favour of something open. But Conversations isn't it. It's a great XMPP client, but it's not something I will ever convince the majority of my friends and family to use. It's couched in technical know-how, and while it's a great app for an open source project, it still manages to feel subpar to the closed-source, back-doorable, privacy-draining consumer offerings. Signal seems the closest so far.

(I should add here that I am trying to do something about this: I contribute haphazardly to OSS I use and I evangelize it in my social circle, but it feels like an uphill battle)

More anecdata: I run self-hosted GitLab, Nextcloud, and Wallabag. Hopefully Mastadon and Pixelfed soon.

There is no freaking way to do SSO between all of these. Despite OAuth+OpenID being older than some of that software. Don't get me started on the fact that the quickest way to get a file from phone <-> PC is to Slack it to myself from my work account.

The web I want will compete with closed-source ecosystems, instead of being a disparate collection of DIY server software that doesn't talk to each other in the slightest.

katet | 6 years ago | on: PHP in 2019

Here's the thing that always grates a little bit for me about these posts:

I don't have a choice.

I've worked at a couple of organisation where there are hundreds of thousands of lines of code written in PHP. It's been there for years. It does its job and - from a business perspective - it does its job pretty damn well. And I get paid to keep it ticking, and to improve it. Not to rewrite it to fit my personal tastes.

In my spare time I've played with Haskell, Rust, C, Lisp, assembly languages, and I enjoy them. I dearly miss some of the more functional aspects from these languages every time I write PHP.

I work with a large PHP codebase right now (amongst others) and while there are a great many technical benefits I could wring from it in another language, runtime, or environment, a lot of the changes needed to get there would be prolonged, painful, and would provide no noticeable business value.

I'm somewhat reminded of Python, where there is the concept of a "pythonic way" of doing things. There is very much a "PHP way" of doing things, a "${LANGUAGE} way" of doing things, and of course an "${ORG-SPECIFIC} way".

I'm also somewhat amused at Rails as a frequent comparison. I've also worked with Rails, and I hated it. It was quite some time ago, I'd probably enjoy it if I tried again. But I will try to remember in future that opinions formed from bad experiences need to be reviewed in light of the time elapsed since then, and my own personal/professional growth as well.

More generally, when I hear a developer (in my own office ;P) espousing the view that "${LANGUAGE} is garbage", I assign more meaning to the fact that they choose to make that statement than I do to any particular view of the language in question.

katet | 7 years ago | on: Way to store your dotfiles: A bare Git repository (2016)

I have a low-key solution. I check in files named by the hostname. For example `.bashrc.[hostname]`. Then I have a quick conditional in all my .bashrc files that checks for a hostname-specific file. This way, I commit them all, but only the relevant ones get loaded.

katet | 7 years ago | on: First Evidence of Sleep in Flight

I've had multiple copies mailed to me.in South East Asia over the past couple of years, but they sent an email out recently saying they were a bit behind schedule ¯\_(ツ)_/¯

katet | 7 years ago | on: DuckDuckGo Traffic

It does in fact support "site:xyz.com" queries, and displays a UI reminder that you're limiting results to that domain

katet | 7 years ago | on: Why standard Indonesian is not spoken throughout Indonesia

As somebody learning Bahasa Malaysia (or Bahasa Melayu, or whatever it is now), do you have any references on this, particularly the standardisation part of Bahasa Baku? For example, I'd always assumed "lelaki" just meant "male", which probably means saying "dia lelaki" is a little bit off ;) (and is probably why I shouldn't pick up BM from street signs...)

katet | 7 years ago | on: GitLab sees huge spike in project imports

This seems a little off-kilter. If you're that concerned, set a dummy email address in your "~/.gitconfig", or your project-specific ".git/config". I mean, I could just clone the repository if I wanted, and if I wanted to scrape it I could certainly do that too.

You can have multiple addresses associated with your GitLab as well, so you can add the dummy one to make sure your profile metadata still shows up.

page 2