HNHacker News
TopNewBestAskShowJobs

BFLpL0QNek

571 karma · joined January 20, 2019

submissionscomments
BFLpL0QNek··on Tailwind and the Beauty of Ugly Code
The article name describes Tailwind exactly for me.

I personally am a fan of schematic html/css. I remember the days off CSS Zen Garden, with well marked up html you can change the visual look completely by swapping out the style sheet. There’s a nice decoupling layer, it’s flexible, it’s conceptually simple, it works.

Despite all that I find myself using Tailwind. I’m not a frontend/designer expert, Tailwind goes against what I believe makes good HTML, Tailwind is ugly to me, polluting classes with markup. It’s equivalent to the embedding inline styles anti pattern. However in an imperfect world it works surprisingly well for visual styling on large projects, with many teams and components and just as well in small single page sites. The perfectionist in me says it’s horrible, the I can’t be bothered with frontend design in me says it’s so much less effort and avoids styling conflicts from multiple style sheets/components and I don’t care if it’s ugly or against the ethos of good html.

BFLpL0QNek··on DevOps Is Bullshit (2022)
I agree with all that.

DevOps is similar to agile. Originally they both described a set of principles, an ethos, not a specific role. DevOps was your development team work closely with ops as one team, using software engineering practices, config as code etc etc.

Then, it just came another name for sysadmin and later platform teams and back to where it all started, passing things over the wall from engineering to platforms.

BFLpL0QNek··on The Future of Vehicle Recycling, Cars stripped, boxed and on eBay within hours
In the UK they are called “breakers” i.e. motor breakers, bike breakers, car breakers etc.

Since the early 2000s I’ve been buying used vehicle parts from these off eBay. One of my local shops closed the physical store and went eBay only in 2000s as that is where most of his business came from so a physical shop was costing to much.

This “new” phenomenon has been happening for 20+ years. Selling used parts has existed way before that also except you’d have to phone around and get the part shipped instead of search online.

BFLpL0QNek··on 66% of renters say homeownership is ‘hopeless’
A lot of the news I see related to Canadas property issues is related to pension funds owning a large amount of property so using their size to constantly rotate tenants then increasing prices for new tenants.
BFLpL0QNek··on 66% of renters say homeownership is ‘hopeless’
That’s the thing. A home should not be an “investment”, it should be a “home”, a home to live and give safety/security, not land, bricks and mortar someone purchases to make a capital gain or rental yield.

Why do people want a “home”? It provides a security renting doesn’t, you can make it your home.

Renting can be more flexible if you are nomadic, it can also be a huge pain dealing with leases, rental increases, dodgy landlords, a lack of security so can’t truly settle on a 12 month lease.

BFLpL0QNek··on We Need To Talk About Vercel
To use R2 you’d need to host images/assets separately on their own domain rather than just put a CDN infront of your entire site and forget about it. Putting assets on their own domain isn’t uncommon but for some stuff it can be a big inconvenience with build pipelines/software support.

I’m not sure on R2 specifics but I remember when I wanted vanity names on Cloudflare I.e assets.example.com it was not possible unless you give Cloudflare control over your entire domain, dropping your current nameservers or sign up for an enterprise plan for cname support.

BFLpL0QNek··on Why and how we retired Elm
It’s not uncommon.

I’ve twenty plus years experience building software on the JVM. From EJB’s of early 2000s to original Spring, then the more recent Spring Boot, a plethora of other JVM tooling. Then I’ve used various languages on top of the JVM, Groovy, Clojure, ETA, Scala. I haven’t used Kotlin only because not had a role that needed it. Then I have a list of non JVM languages, frontend stacks and sysadmin/cloud or as they like to call it DevOps

Scala has been my JVM language of choice for the past ten years.

When I was last applying for jobs my experience with Scala seemed like it was a huge negative for the companies I interviewed at. It was “you’re one of them” and things got frosty after mentioning I’m reasonably experienced in Scala and its functional programming libraries and enjoy it as find I have less bugs.

If I removed Scala from my cv and never mentioned it I got a much more positive experience.

Some of the roles I didn’t mind it going frosty. My red flag radar went up aswell and I got the sense of big balls of mud and I’d probably hate it but needed a job. Some it was a huge disappointment, exciting company, exciting projects, perfect fit skills wise but I was seen as a Scala developer not a great fit for Kotlin as excited as I was to use it because of the companies projects.

Not sure what I’m trying to say but this “not good fit” attitude doesn’t seem uncommon if you have used specific languages/tools/things people interviewing you don’t like or didn’t grok. Tech talks a lot about diversity which is mostly virtue signaling and forget diversity of minds is also good.

BFLpL0QNek··on Ex-Googler Answers Why Google Search Is Getting Worse
I’m increasingly accidentally clicking ads on Google search. When it happens I’m sure I’m in an A/B test with ads in search results at the bottom of the page blended in to look like results.

Searching for products or manufactures is now increasingly impossible. Almost all the hits are ads for online retailers selling the product with the manufacturer’s page increasingly difficult to find in results.

The other one is everything is now “The best”. Every article surfaced is some low quality SEO post starting with “The best”.

Then tech searches bring up sites that have scraped stack overflow/GitHub duplicating content in a worse UI with ads/pop ups/redirects reminiscent of early 2000s filesharing website download link clicks. How these sites rank higher than the sources is a bit confusing.

Sites like medium locking content up so need to join to read it, Facebook groups killing forums have killed a lot of what made the internet/Google good.

It seems Google has less content it can index as content is locked away in private silos, the only freely searchable content is e-commerce sites and Google makes it money off the ads for ecommerce sites so those get pushed to the top of the rankings.

BFLpL0QNek··on WWDC Announced on June 5, 2023
Given the PR recently with Apple calling people back to the office you would think they’d be leading by example and moving back to in person events again.
BFLpL0QNek··on Defaulting on Single Page Applications
I see this in most single page apps.

They have a waterfall of multiple API requests by the browser to display a single page. That means the front end has a bunch of logic to aggregate and piece together requests. This in itself isn’t a big deal, if you move to doing it on the backend you still have the same logic and need to make the same sub requests.

Where it does become problematic is it leads to fat API endpoints sending far more data to the client than is needed. GraphQL lets you choose what fields you query but odds are there’s still data available you can ask for that shouldn’t be asked for and sent to a browser.

If your requests/aggregations are done serverside it gives you a better chance of filtering out data that should never be accessible in the browser. You can also make full use of Cache-Control headers and backend caching.

Creating individual endpoints for web apps went out of fashion as it involves more effort and people don’t like effort to do things well. I see it re-invented recently as backend-for-frontend.

BFLpL0QNek··on Why use Rust on the back end?
This argument gets posted for nearly every [insert language name] that isn’t JS/Java/Python.

It’s not to hard to learn. The Rust web stack is fairly simple and easy to get going with in a few days. Good developers use many languages and enjoy using many languages. If you drop the usual requires ten years experience you have just increased your hiring pool to a bunch of people who are excited to learn so will often put in the hard work to learn.

It’s a bit disrespectful to think a new grad can’t use a language other than JS/Python and they’ll be more productive in JS/Python. How little do you think of grads?

BFLpL0QNek··on Google tells employees that fewer of them will get promotions to senior roles
I noticed this.

Not Google but I worked at a mid-size US based company briefly last year.

The team was junior but senior in titles and highly opinionated, that was why I ended up leaving as nothing was getting done. Not last week I got a bunch of LinkedIn updates saying “Congratulate X being promoted to Senior/Staff/Principal Engineer”.

The grads I worked with who were good and what you expect for a grad where getting promoted to senior’s and the seniors who were ok, maybe a little inexperienced were getting promoted to staff.

I think roles mean nothing these days. They’re devalued and only exist for people to move up in to the next pay band.

What I consider senior from 15-20 years ago is staff engineer now and principal today feels like someone at the top of senior 15-20 years ago.

BFLpL0QNek··on AWS Is Asleep at the Lambda Wheel
With managed runtimes it used to be you had no control. It was an opaque black box with complete vendor lock-in.

Now it supports Containers it’s a place you can run any compute you can think of as long as it finishes in 15 minutes, uses less than 10gb of memory and you want to trigger it using http, direct lambda invocation or from one of the various aws event sources such as s3, sqs, sns.

I used to avoid Lambda as it was an opaque black box. Now it’s a generic compute platform for short lived jobs using container support.

BFLpL0QNek··on AWS Is Asleep at the Lambda Wheel
Of course 90% will use zip packages, container support is relatively new in the lifetime of Lambda.

Deprecating zip packages doesn’t mean zip packages no longer work, it means pretty much what they’ve done, ignored the managed runtimes with the view if the current runtime doesn’t do what you want, make your own with exactly what you need using tools you are likely already using with no vendor lock-in.

For things like Python most people don’t care about the underlying operating system from the projects in multiple orgs I’ve worked in. They go to Dockerhub, type Python, pick the image with the highest downloads and run pip install inside it. If you use Go, Rust, anything that creates a static executable you use “FROM scratch” with the only thing inside the container being the executable.

Those who do care about the underlying image are likely large orgs with a set of already blessed base images or people using things like Nix to build containers.

From a large org perspective and developer experience getting a “registry” for free because packaging as a standards compliant OCI image means instead of effectively creating your own registry on top of s3, you get a far more robust one with tagging, asset hashes, layering etc out the box. I never had a issue with zip archives but containers removes a bunch of roll your own boilerplate registry.

BFLpL0QNek··on AWS Is Asleep at the Lambda Wheel
They’ve provided custom runtimes which removes the need completely for managed runtimes giving you whatever version you like. They also did it in a way with Docker that’s simple and powerful.

If I was an AWS exec I’d say managed runtimes are legacy, with the introduction of containers move to containers for new deploys.

I’ve been critical of Lambda in the past and critical when people use Kubernetes/Docker because it’s Kubernetes/Docker. The container support in Lambda has been a game changer, it’s one of them now they’ve done it you think why didn’t they think of that earlier, it’s a great fit.

BFLpL0QNek··on Ask HN: How are the current layoffs affecting non-US developers?
During the pandemic I was regularly seeing $170k AUD ($116k usd) + super (10% pension contributions) + equity if available, fully remote or 1-2 days a week in the office for senior/staff/principal roles.

I’m now not actively looking but when I’ve had a quick browse on LinkedIn I’m seeing similar jobs now advertised at $140-150k. All now marked as “Hybrid” or must be in the office, remote has backtracked massively. Looking at the Hybrid definition a lot say 3-4 days in the office.

For senior / staff / principal roles I won’t look at them if less than $170k which is still a huge pay cut on my current role, admittedly I got lucky with.

BFLpL0QNek··on Portugal proposes to end Golden Visas, curtail Airbnb rentals
Australians treat property as pension funds. Pretty much every middle class person will have an investment property or holiday house. Airbnbs are popular, less requirements (no tenant rights)/more flexibility from a land lords point of view while also significantly more rent. This removes stock from local workers in favour of tourists.

There’s some tax rules than incentivises investing in property, negative gearing, capital gains.

With Australians holding there wealth in property the government and their core voters don’t want to see property prices reduce,

Australia also has high immigration but not building despite population growth.

Australia is otherwise known as the “Lucky country”, its holding to its reputation. https://en.m.wikipedia.org/wiki/The_Lucky_Country

BFLpL0QNek··on Postgres Unlogged Tables
I’ve used it for bulk loading on time series data partitioned by date.

It’s a few years ago so details are blurry. We got daily snapshots and on ingest we created an unlogged temporary table then when complete used INSERT FROM to the destination table if I remember right.

As long as the application handles failure on bulk ingest and you copy the data to a logged table or enable logging on the table once ingested it worked really well.

BFLpL0QNek··on Atlassian says recent data leak stems from third-party vendor hack
Completely irrelevant, this triggers me how broken the workplace is while there’s a huge push to get people back to the office.

> "Empower employees to reserve a desk in the workplace"

This business shouldn’t have a need to exist at all!

At home I have a separate office, set up how I like/most productive. It just works and a nice productive environment. No having to *book*/find a desk, no broken monitors, cables, hubs or chairs. No being told to move as you found a comfy spot with working equipment and get in to the office consistently early to use that spot for multiple consecutive days.

BFLpL0QNek··on Show HN: I made an early 2000s-inspired internet forum
Nice design.

I miss the 2000s forums. They were a great source of information that was easy to read, search and for search engines to index. As the posts where often by enthusiasts they were a treasure trove, especially the automotive forums for repair information. The closest we have now is Reddit but doesn’t feel the same and the UX certainly isn’t as good even comparing to 2000s hobbyists installing vanilla Vbulletin and tweaking colours and a few plugins.

A lot of the forums I visited that died, died because success made hosting to expensive as the only option was vertical scaling the database and hard to moneytorise, then things like private Facebook groups took away the various cliques.

I often wondered if I could create a horizontal scalable forum to make hosting costs trivial. Topics are a natural partition key and old posts are heavily cacheable with only recent posts needing lower cache ttls. I think the deployment complexity would be too much for hobbyist though.

BFLpL0QNek··on RustDesk – Remote desktop software, written in Rust
Agree the underlying language is not to important.

On the other hand when I see built with Rust I have high confidence it’s going to be fast, bloat free, easy to install binary and not some slow website packaged in electron made to look/feel like an app or some NodeJs app with 1000s of random dependencies.

BFLpL0QNek··on Ask HN: Using Java for a web application in 2023
Java web applications I’d describe as “boring technology” if you want typical rest applications with SPA frontend or a full stack server side rendered (SSR) app. By boring I mean it works with little fuss or churn.

Depending on your scale/budget they’re a bit more expensive to host due to JVM memory requirements but performance is good. Not a Java issue but a issue if you choose a language other than JavaScript for the frontend is you need to up skill frontend devs with the Java build tools/templating libraries and most frontend devs will have a bias against Java as it’s been bashed by lots of people who haven’t used it, it’s not sexy and they think of Java aplets from the 2000s.

BFLpL0QNek··on Sharing Your Netflix Account
Yes. Not to bothered about the account sharing but it’s looking like it may add a bunch of friction to use Netflix away from your primary residence/device.

If the friction becomes to much, Netflix looses its value and illegal downloads look more appealing again.

When current budgets are tight I can’t see how Netflix wins with this as likely will push away users as it’s a non essential service with declining content quality as they’ve gone for quantity not quality now and Netflix isn’t the only streaming provider in town now.

BFLpL0QNek··on Job Hunting in 2022
> but doesn't fit your mental image of what a Google employee should be -- otherwise known as gatekeeping

Otherwise known as “culture fit”?

I say that sarcastically. Anywhere I see “culture interviews”, “our culture”, or “culture fit” I think it’s one of those bull shit jobs type things, and used as a get out clause in the hr tool box.

For the big companies, culture fit often feels a bit cult like. It’s no longer a job to pay the bills even if you enjoy the work, instead you have to believe the company is changing the world, eat, sleep and live the company values etc etc.

BFLpL0QNek··on Less gym time, same results: Why ‘lowering’ weights is all you need to do
Bands help. You get the most assistance at the bottom and the assistance decreases as you pull up to your strongest position.
BFLpL0QNek··on I Migrated from a Postgres Cluster to Distributed SQLite with LiteFS
I think the usecase is the new generation of platform as a service (PaaS) popping up. Cloudflare workers/pages, Netifly, Vercel ect.

They all deploy web apps at the edge, so are distributed by default. A lot of the web apps deployed on these services have small volumes of data, read heavy and low writes. They are also low system resources so an embedded db makes sense?

Running SQLLite locally to the application will give extremely low read latency with most of the apps being read heavy/biased. The sales pitch for deploying at the edge is you can have hundreds of apps running across the globe near your users transparently.

I’m fairly interested in LiteFS as a distributed cache. I’ve seen systems use a message queue listening for updates then updating local caches which is a bunch of custom code/plumbing that can be replaced with LiteFS. Using LiteFS the read replicas are essentially materialised views.

BFLpL0QNek··on WAL Mode in LiteFS
I was looking at LiteFS docs yesterday as it happens.

Does it support snapshots?

From what I could work out, when you start a non primary instance it catches up from the primary? So if your replica is a fresh instance it replicates the entire db from the primary?

I was wondering if it’s possible to snapshot somehow, so if I have a fresh server that comes online it grabs the last known snapshot from somewhere like s3 then the delta changeset from the primary is much smaller (less load?)

BFLpL0QNek··on British Police to screen suspects for signs gambling addiction is driving crime
The UK normally has one, maybe two gambling machines stuck in a corner of a pub.

Australian pubs, restaurants, hotels have “vip” rooms. Rooms filled with gambling machines. They can’t advertise “pokie machines”, the Australian term for gambling machines so instead they renamed them to “vip rooms”, advertising under another name instead. Walking down a street you see pubs with separate entrances with big bold signs “vip room”. I’d guess “vip” rooms are the main income for Australian pubs as they’re such a prominent feature.

Gambling is a massive industry in Australia. Australia gambles more than anywhere else. With so much money involved it seems it’s bit of a dark murky industry. A YouTuber journalist/comedian got firebombed just the other week after a series of investigative videos on New South Wales gambling corruption https://independentaustralia.net/life/life-display/friendlyj.... The same journalist has had his house raided by terrorist police on direct command from politicians for getting on the wrong side of them with corruption videos.

BFLpL0QNek··on A taste of pavex, an upcoming Rust web framework
Have you read this good series of blogposts on implementing Hexagonal Architecture in Rust? https://alexis-lozano.com/hexagonal-architecture-in-rust-1/

I’m the opposite, I don’t find much need for “dependency injection” frameworks. It’s trivial to do DI without frameworks.

BFLpL0QNek··on [dead]
Unless you are a top tier presenter or on the executive board you are not getting any bonus and more than likely getting payed the lower end of market rate.

It’s a public owned company that private media companies and politicians have no hesitation attacking at any chance they get. The executive/talent salaries are all public, the salary bands are also available via freedom of information requests. It’s constantly under budget cuts and it’s status means it is intentionally crippled as it can’t be seen to dominate the market or have an unfair advantage. Getting a salary increase is extremely difficult and has to go through strict processes. It’s far easier getting bonuses, salary increases etc at private companies.

There’s very few people working at the BBC for the money. Most people I know work at the BBC because of what the BBC is and stands for, then eventually leave for the money.

Page 1 of 4Next →