Hacker Newsnew | past | comments | ask | show | jobs | submit | franticgecko3's commentslogin

Tab complete is completely broken on Firefox mobile (Android)


They have nothing to do with mathematics but everything to do with being extremely popular books.

Most people that have read a mathematics textbook have also read and enjoyed Harry Potter.

Given you have enjoyed drinking water and breathing in the past, there is a high likelihood that you will enjoy watching the Star Wars films.


I've long suspected it's got to do with office real estate.

You spent $10m or $100m on a building that's now half empty.

Either you downsize or commit to enterprise scale sunk cost fallacy and enforce RTO so your real estate investment isn't "wasted".

City centres also thrive on RTO, with high street shopping on a generational decline it's up to office workers and their employers to prop up the economy of the CBD one overpriced lunch at a time.


The city centre / real estate thing sounds like an externalisation - which companies famously dont give a shit about.

It should be a tradegy of commons at best: it may affect the CEOs 401k, but not by much (0.000001% for their individual decision to RTO for that company y). It like buying McD shares then going to McD for lunch every day with your team.

I think there are other reasons.


Most companies, at least in the U.S., don’t own their offices. They lease them.

In fact, a whole bunch of office leases were supposed to be expiring in 2024/2025. If this was the reason RTO wouldn’t be picking up right now since they would be cutting back and ending their leases.


I've started learning (in 2025!) and using Perl lately as shell++

It's extremely stable, installed almost everywhere, and has much fewer insane idosyncrasies than shell.

I can write some Perl and confidently hand it to a colleague where it will almost certainly work on their machine.

It's a shame it's so dead, for a scripting language there's nothing else that ticks the same boxes.

I would never write systems software with it, of course


My go-to use case for modern Perl is to be the default program instead of sed. Sed regex support is abysmal and the same command line flags behave differently between BSD (and macOS) and GNU versions, in particular the `-i` for doing replacements - the number one use case for the program. So, this means that many shell one-liners and small scripts don't really work the same way on macOS and on Linux, and it's pretty annoying.

Perl is straight up better. You need to remember one word: pie - for it's command line options, and now you can do:

    ```
    echo "John Doe" > name.txt
    perl -p -i -e 's/(?<first>\w+)\s+(?<last>\w+)/"$+{last}, $+{first}"/e' name.txt
    # name.txt after the command: `Doe, John`
    ```
First of all, it woks the same way across platforms.

Second, you get all sorts of goodies: named capture groups, lookahead and lookbehind matching, unicode, you can write multiline regexes using extended syntax if you do something complicated.

And finally, if your shell script needs some logic: functions, ifs, or loops, Perl is straight up better than Bash. Some of you will say "I'll do it in Python", and I agree. But if your script is mostly calling other tools like git, find, make, etc, then Perl like Bash can just call them in backticks instead of wrapping things into arrays and strings. It just reads better.

BTW Ruby can do it, too, so it's another good option.


I remember π and e and type

  perl -pi -e '...' file.txt


And if you are using a newer Perl they sometimes add features that aren't enabled by default unless you opt-in with a 'use v5.38' style declaration.

If you want those features on in your one-liner you can use -E instead of -e

    perl -pi -E '...' file.txt
(I used to need this long ago when I wanted to use the then-new "say" in my one-liners)


At my work we use perl extensively for utility scripts and such. In the past few years there has been a push to write new scripts in python, but I don't really see the point. It has most of the same drawbacks that perl has: 30x slower than a compiled language and dynamic typing.

We have many scripts that range from 5.8 to 5.36 and everything in between. 5.8 is 20 years old. Someone did a search & replace on the shebang lines to move all the older ones to 5.20 (why they picked that one, I don't know) and everything just continued to work.

I prefer perl over python. turn on use strict, use warnings FATAL => 'all' and use modern function signatures. Perl is still great for its purpose.


>It's extremely stable, ... It's a shame it's so dead,

The former is the consequence of the later. Popularity kills stability. Perl is the ultimate sysadmin language because it's so portable and never changes. We really lucked out with the Raku thing driving people away to python. Because of it my perl scripts I wrote in 2003 run on perl system interpreter today and the vast majority of my perl written today would run on a 2006 perl interpreter (some functions missing in some libs in troublemakers like Gtk bindings, etc), but it's generally very good.

These days with python you can't even run any random script written today on your system python from today. You have to set up an entire separate python for every script. And don't even think about trying to run a python script from 2006. That's what popularity does: fracture.


Good old Java is also stable and yet popular. It is not particular "trendy", thought. My feeling is that languages which "live in"/"create" ecosystems such as JVM, BEAM or even LLVM have a better probability to outlive other languages in the long run. Let's see what happens with golang in some years... ;-)


Stable? Huh. Never thought of Java that way. Dead, yes, but it was never stable. In my experience I have to set up a custom JVM version for every java application I've come across. Is your experience different?


Dead? Really? It's one of the most popular computer languages. And it constantly evolves and becomes better over time.


For me, Java died with Oracle shenanigans. I moved to C#. Java isn't truly dead yet but I think it will slowly die off because of Oracle. Same as Solaris and SPARC, but a little slower.


It's stable, installed everywhere, and I use programs written in Perl like when building Linux From Scratch. I haven't written in Perl since the 1990s. I do read code written in Perl and Raku, and I am often impressed by how succinct the code can be.


> for a scripting language there's nothing else that ticks the same boxes

I think Python ticks almost all the same boxes (and is much better designed in my opinion).


By far not. It's only more readable, but much more verbose, overarchitectured, slower and esp. unstable. Old perl scripts still work fine, old python scripts are not only many, many files, but also break every other year.

And you cannot just install a python module as you install a perl module. You need venv everything because it's soo fragile.

But this 10k sponsoring is not really worth mentioning. It's just like Platinum sponsorship for one of their conferences.


> Have a nightly job that runs unit and integ tests

Not enough IMHO.

We run all tests on developer machines and CI with -race. Always.

It's probabilistic, so every developer 'make test' and every 'git push' is coverage.


Assuming OP is in the UK, they're talking about hackney carriages which are subject to more stringent regulation than other private hire vehicles

https://en.wikipedia.org/wiki/Hackney_carriage

I think this would be similar to the medallions of yellow NYC cabs


It won't be a full-blown Hackney license, Hackney licensing is because unlike these "ride sharing" apps and what the UK would call a "mini cab" service, which require only a "public hire" license - the Hackney license authorises you to literally pick up strangers on the street, which was of course a completely normal way to use a taxi in a major city decades ago and is still somewhat common at say airports. That's what the glowing "Taxi" sign on the roof is for.

This needs more driver quality insight because e.g. passenger gets in your vehicle, you drive them to some secluded spot and their body is found the next morning - there's no records for murder cops to start from, unless there was a witness there may not even be a description of your vehicle. The UK has had this happen, but it's very rare because the sort of person likely to escalate to murder is not going to get licensed.

In contrast a mini-cab or Uber-style driver has records of who was dispatched to pick up somebody, where they were picked up etc. So if you take to murdering your fares the murder detectives will show up at your door with company records implicating you.


>Why Elixir + Erlang are not more popular for high concurrency projects is a mystery to me.

I work at an Erlang shop.

For Erlang to be useful you need to have massive scale, millions of DAU. Yes Elixir might run your website serving thousands of DAU but Erlang and the BEAM was not invented for you. Few companies have the scale that makes Erlang a reasonable choice.

More pressing these days I believe is that the Erlang ecosystem is all or nothing, the BEAM is like its own little operating system and has extremely (IMHO) complicated setup and configuration with many moving parts: ERTS, epmd, Rebar,... You don't need or shouldn't use container tech and k8s with Erlang because it's already doing that stuff in its own Erlang way - but it's the Erlang way it's extremely unique and unfamiliar to most.

When you have the right use case for Erlang and you see it in action it is truly like black magic, it's been a highlight of my career to work with it.


When we tried to use Elixir Liveview we found that containerizing it (docker compose) was necessary just because of how demanding the runtime environment is regarding keeping modules up to date and synced, and what that requires of the host operating system.

We'll run prod on one server and dev on 3-4 workstations and nothing will match between any of them without a docker container to give this Elixir app a cleanroom environment to work from.

The project we were trying this on eventually ran out of funding before it got off the ground, and we lost access to our main guy who understood Elixir setup really well, so nowadays the rest of us can't even manage to stand up the service to demo it because of all of the moving parts that get angry about not having their environment set up just right.

I've basically found it the only language more difficult than python to set up an environment for. (Well.. the more I think about it, Gradle and every other mobile development stack I have yet seen is literally Satan's armpit..)

With python (though I rarely code in that either) I can stand up almost anything on almost any machine with miniconda and venv and not have to drag Docker into things.

Node/NPM is a prima donna and a PITA but IME as long as you whack it with a wrench long enough following up on each of its complaints then you'll eventually get things running.

My experience still revolves around PHP or Perl or C on the backend, Raw Javascript or sometimes Elm on the front end, and those all seem to be a lot easier to maintain over a timescale of decades as servers update and browsers gobble up new and different features.

---

What I can say in favor of Elixir Liveview is that we built a smooth as hell SPA using that. It was incredibly user friendly to work with and aesthetically amazing, but the maintenance right down at the foundation was the biggest challenge.


What environment issues were you running into? We use mise/asdf to manage which version of erlang/elixir our project is using, and only needed to containerize our database to ease its maintenance.

For the dev experience, I'd also recommend NextLS/Lexical over Elixir LS until the official one is out. It should compile much faster for nontrivial Elixir applications.

https://elixir-lang.org/blog/2024/08/15/welcome-elixir-langu...


Would something like Nix (optionally, NixOS) help in getting all the parts documented and working together?


Elixir has been quite easy to set up, configure and deploy, at least for the last 5-6 years. I can't speak for Erlang though.


> Elixir has been quite easy to set up, configure and deploy, at least for the last 5-6 years.

One of your sibling commenters noted...

> I've basically found it [Elixir] the only language more difficult than python to set up an environment for.

Quite the difference.

I'm not saying either one of you is wrong; I'm sure you both experienced what you say you did, it's just interesting to see the dichotomy, literally (as of this writing) next to each other.


We found Erlang to be the right choice at small scale. Namely, we used it in iot applications, where the self-healing property of proper supervision trees resulted in a very stable implementation. We also saw the same benefits in the cloud part of our application. No complicated k8s setup, just simple supervisor trees.


> Few companies have the scale that makes Erlang a reasonable choice.

This is a reality that I wish more people would embrace, for so many things.


elixir softens a whole ton of the sharp edges around getting started and there are only a handful of "gotchas" coming from other hlls (like all terms being immutable when you pass to a function -- but thats honestly almost a problem with the "mainstream" languages).


So you'd do:

x = doubler(x)

Instead of treating the function like a "subroutine"? Like:

x = 10

doubler(x)

print x

I'm unsure why, but I use the former. Probably due to most sources saying global variables are bad and if I do it the latter way I get errors, whereas with the former I only get errors unrelated to scope.

I'm not a professional or even amatuer programmer, that's why I ask. My only exposure to Erlang unfortunately is from coding contests like advent of code and Codegolf stack; and those are "clever" and my brain doesn't abide clever. The inverse of "why use many words when few words will do"

In my own programs, if I go back and read the code I can tell what I copy-pasted vs what I understood as I wrote it, if that makes sense. Because clever stuff that solves the problem I've been unable to solve in the time I alloted will be in my code. You see anything pretending to be, or being a lambda in my code, I lifted it.

I would like to learn Erlang and there's been a few book recommendations aside from TFA. This comment also serves as my reminder to get some books.


well probably part if the reason for example in python, you cannot use the latter for x an integer but you could if x were a dict or a map!!

that's probably why!!

but don't forget, there are core routines that must be used to set certain data that are of the latter form, so at some level you have no choice.

    d = {'foo': 1}
    d.pop('foo') # <== mutating function call


I agree with most of your points but this one

>I find it useful for some coding tasks but think LLMs were overestimated and it will blow up like NFTs

No way. NFTs did not make any headway in "the real world": their value proposition was that their cash value was speculative, like most other Blockchain technologies, and that understandably collapsed quickly and brilliantly. Right now developers are using LLMs and they have real tangible advantages. They are more successful than NFTs already.

I'm a huge AI skeptic and I believe it's difficult to measure their usefulness while we're still in a hype bubble but I am using them every day, they don't write my prod code because they're too unreliable and sloppy, but for one shot scripts <100 lines they have saved me hours, and they've entirely replaced stack overflow for me. If the hype bubble burst today I'd still be using LLMs tomorrow. Cannot say the same for NFTs


LLMs are somewhat useful compared to NFTs and other blockchain bullshit which is nearly completely useless. It will be interesting what happens when the money from the investment bubble dries out and the real costs need to be paid by the users.


Bitcoin has been bootstrapped into usefulness through the durability of the belief many have had in it, especially as people begin to lose confidence in the dollar and US equities.


I'm from West Yorkshire, the dialect is slowly fading. My grandfather would speak with a strong accent and with spatterings of Norse words. I notice now that, yes, dialects in the UK are becoming homogenised but there is also some American influence seeping in. The American way of pronouncing a double t as a d "better" => "bedder" is increasingly more prevalent in the UK, it's slightly saddening.


When I was staying with a friend in Norway once we visited his mother, and to me she sounded like someone with a broad Durham/Newcastle accent (my mother is from there) speaking German. A lot of north east words are germanic, or Scandinavian. My grandfather was a farmer near Durham and pigs were swine, children were bairns.

As for American influence, my youngest daughter picked up a lot of that from Youtube at one point, and I once interviewed a girl from Gravesend with such a strong US accent I assumed she'd grown up over there.


Exact same thing is happening in Australia. I'm guessing it's from watching streaming video, Netflix, TikTok, etc. where American accents predominate, and any non-American accents are flattened enough to be sure it's easy for Americans to understand them.


It's weird that the mainstream TV execs think audiences want boring American accents. To me, one of the best things about the White Lotus (hit HBO show) is that it highlights a distinct array of accents (including Australian).


Thanks! Now I'm inclined to watch it. I do love when shows make a point of keeping distinct accents.

What with having moved a lot as a bairn, I feel that accents in many places are fading away. And also, I tend to sound like whoever I've been talking most to for the last two hours. It's a bit weird, that…makes people ask why I'm speaking with x accent. (^_^);


Pronouncing zed as "zee" is particularly annoying (as in "Gen Z").


The one that gets me the most is English people suddenly saying "fall" instead of "autumn".


It is a traditional one which fell out of fashion.

https://weather.metoffice.gov.uk/learn-about/weather/seasons...

https://twominenglish.com/autumn-vs-fall/

Now if we start saying "diaper" again instead of "nappy", you can start to worry.


The weirdest one to me is the English suddenly referring to police as "feds".

https://english.stackexchange.com/questions/37256/police-in-...

It's not like they didn't already have dozens of slang terms for the police.


anytime I hear someone use "zed" for Z(ee) the next thing I hear in my head is "Zed's dead, baby"[0] Pulp Fiction and I just can't help but chuckle

[0] https://www.youtube.com/watch?v=4E3aAvhUucI


I emigrated from the UK to USA in 1980 and my first code review at Bell Labs I spent about 30 mins explaining my code and then asked if there were any final questions and someone hesitantly asked, "What is this variable 'zed' you keep talking about?"


I used to work for a networking start-up and when we were in the US trying - without success - to sell the company we practised over and over saying "roWter" for "router" (English pronunciation like "rooter").


As a Canadian I read that as "rOATer" for a moment, because the word row rhyming with ow is quite uncommon here -- the row I know is in a boating or a data context.


You never have a row with anyone?


As a Canadian, obviously not.

(For real though we don’t use that word for argument or whatever.)


As a Brit, so did I. That said, a "rotor" would be pronounced as "rOATer" and has a completely different meaning.

isn't English fun !


Funny, I just realised that I say "rooter" in French (because route ("roote") means way, like in English), but I say "rAWter" in English


There are two words with the same spelling but separate pronunciations in British English:

Router (rooter) the thing that routes packets in a newtwork

Router (rowter) a machine tool that cuts grooves, etc., in wood or metal.


Ah, so I pronounce the IT equipment wrong. I guess that "raw-ter" sounds really bad then.


Having posted the above a few days ago, last night I (originally from the UK) was in the car with my wife (US born and bred) following and reciting map directions on my phone like "0.8 miles left on San Antonio" which I say as UK standard "nought point eight miles left on San Antonio." After a while she asks "what is nought?" Here we just say "point 8 miles" or "zero point eight miles." We've only been married 42 years and are still learning each other's language:-)


Some time ago a few people from the UK kept calling/referring to someone as a nonce. It took me awhile to say something, but I finally asked because I simply couldn't understand or wrap my head around why they kept referring to this person as a single use random number (mostly for authentication in my case). It was so confusing.


There was a cartoon in Private Eye a couple of weeks ago that suggested the reason why Millenials and Gen Z could never be reconciled is that they can't agree whether it's pronounced "Generation Zed", or "Generation Zee", as the younger generation themselves would call it.


I find Valley speak, where people say 'like' every third word, infuriating.


“Literally”!


There really isn't one 'west yorkshire' accent, nor one 'north yorkshire' accent, there is much much more variety than that. A leeds resident sounds different from a wakefield or dewsbury resident, and even then there can be variation where some people exhibit less of their locale accent than others, depending on how much they rebelled against sounding 'local' in their teens.


It may alleveiate the epidemic of th-fronting among young men.


i fought like you for many years but i fink it's just part of the accent now


I agree, it’s very sattening


Norse words?


https://www.viking.no/e/england/e-yorkshire_norse.htm

Most have fallen out of use but e.g. 'laik' is still understood by young people.


Beck, meaning stream (small river), is one I remember from growing up in the north east.


I may be completely wrong, but I think one direction of evolution in pronunciation is the gradual shift to that which takes less physical effort to pronounce.

"Bedder" is less physical work, less effort, in the mouth than "better".


“Be’er” seems like even less work. For some people


This is a bit of a myth. A glottal stop is a full consonant sound which takes effort to produce. It's not really any 'easier' to produce than an alveolar stop in any objective sense.


>The biggest mistake I see people make with Go channels is prematurely optimizing their code by making channels buffered. This is almost always a mistake. It seems logical. You don't want your code to block.

Thank you. I've fixed a lot of bugs in code that assumes because a channel is buffered it is non-blocking. Channels are always blocking, because they have a fixed capacity; my favorite preemptive fault-finding exercise is to go through a codebase and set all channels to be unbuffered, lo-and-behold there's deadlocks everywhere.

If that is the biggest mistake, then the second biggest mistake is attempting to increase performance of an application by increasing channel sizes.

A channel is a pipe connecting two workers, if you make the pipe wider the workers do not process their work any faster, it makes them more tolerant of jitter and that's it. I cringe when I see a channel buffer with a size greater than ~100 - it's a a telltale sign of a misguided optimization or finger waving session. I've seen some channels sized at 100k for "performance" reasons, where the consumer is pushing out to the network, say 1ms for processing and network egress. Are you really expecting the consumer to block for 100 seconds, or did you just think bigger number = faster?


Yup, most of my uses were unbuffered, or with small buffers (i.e. 3 slots or fewer), often just one slot.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: