HNHacker News
TopNewBestAskShowJobs

danjac

3,496 karma · joined January 23, 2019

Github:

https://github.com/danjac

submissionscomments
danjac··on LazyVim
Helix is quite nice, with some sensible defaults and an easier setup. The keybindings take a bit of getting used to if you are coming from it with years of vim muscle memory, but kind of make more sense when you think about it (select+action vs action+select). It's still rough around the edges but one to keep an eye on.
danjac··on LazyVim
This is the problem though: if you come to Neovim, and ask "what is the best formatter/linter" someone will tell you "use null-ls". Then a dozen others will say "don't use null-ls, it's been deprecated, use efm-langserver".

OK, how do I set up efm-langserver with Neovim? Good luck! You could probably use a plugin, or maybe not. You'll need a way to install LSP servers. nvm-lsp-installer? Nope,that's also deprecated, use Mason. OK, MasonInstall Black. Wait, it's not formatting anything. Oh, you might need nvim-treesitter. Um...ok, but that's installed already. Ah, you just haven't configured it correctly...here is my setup (pastes 300 lines of Lua or vimscript with zero context as to where you are supposed to load it)....Why are you using efm-langserver? Formatter.nvim is all you need! What? That's old hat! You should be using neoformat!

If you mention Ale or coc.nvim...they stare at you as if you have just stepped out of a time machine from the 19th century.

danjac··on LazyVim
Yes I did. And they work fine, until you need to do that one thing (e.g. "Set up Black to format on save"). Now you are back in that world of pain of figuring out which plugin needs to be installed/configured, only now you are figuring out someone else's way of doing it.
danjac··on LazyVim
I've been using vim for years, switched to neovim, and at this point I'm ready to throw in the towel and just use vscode for anything beyond simple text editing.

The amount of work needed to get a basic IDE up and running for your languages of choice, even for commonly used languages such as Python or Javascript, is far too much for someone who wants to get on with their day job or hobby coding and doesn't want to spend precious hours fixing obscure issues in Lua.

Furthermore, the community does not have a good culture of documentation and learning: too many plugins have very sparse docs, and other online resources such as the Neovim subreddit are hostile to newcomers with "RTFM" a common answer. The community is also fragmented, with too many ways to do the same thing in the name of some platonic ideal of personal freedom over practicality.

A simple question like "How do I set up Black with neovim to format my Python files on save?" will yield a dozen answers, each one with someone's favourite plugin. Setting up that plugin will require another plugin, and so on until you end up with a Jenga tower of dependencies that doesn't quite work the way you want, but is too fragile and time-consuming to tweak correctly.

In the meantime, I can just Ctrl+P and install what I need in vscode and be on my way in a few minutes.

I don't particularly like vscode. It's heavy and slow and janky, particularly on older laptops. I don't like being sucked back into the Microsoft ecosystem after spending years getting away from it. But ultimately, I want to just get on with my job, and my job is not Lua Developer or Neovim Plugin Expert.

danjac··on Pines – Alpine and Tailwind UI Library
With Alpine if you start having anything bigger than a snippet you should pull the JS out into a component using Alpine.data()[1] which can live in a <script> tag or a JS module.

[1] https://alpinejs.dev/globals/alpine-data

danjac··on Threads, an Instagram app
It's not so much how many users have abruptly left, it's how much people are actively using Twitter and posting on it. How many people are just ghosting the site?
danjac··on Threads, an Instagram app
Well, if you don't mind your cars randomly catching fire...
danjac··on Threads, an Instagram app
It's Musk we're talking about here, so Hanlon's Razor probably applies. Unlike his other companies he doesn't have handlers to mitigate his poor decision-making.
danjac··on Why Britain doesn’t build
The whole concept of leaseholding is a reminder that Britain, despite its pretensions of modernity, is really just a feudal society under the surface.
danjac··on Being “rockstars”: when software was a talents/creatives industry
Consultancies could hire all the "rockstar" developers they want, but their culture is around generating billable hours, not building great software. A developer on the Scrum/Jira treadmill, working on one ticket at a time, will not have the leeway to step back and look at solutions holistically and come up with a better approach.
danjac··on Being “rockstars”: when software was a talents/creatives industry
"his individual eventually returned the company laptop, which was bent in half. they told me that they had smoked enough DMT to understand that they had created their own god and that if my org needed further investment, to reach out to them."

I guess they were a rock star in the "Led Zepplin trashing a hotel room" sense.

danjac··on The damaging results of mandated return to office
They might be making the "best decision", but best decision for whom? Their own career, social standing and property investment portfolio? Or the best decision for the company and employee well-being and productivity?
danjac··on Trinity Desktop Environment – a modern KDE3 fork
You do realize that the point of this project is to maintain a DE from the early 2000s?

"Why does this replica of a 68 Ford Mustang look like it's stuck in the 1960s?"

danjac··on Bolwoningen: Living in spherical homes
What about insulation? A steel box in a heatwave won't be much fun either. Are there solutions for heating/cooling container homes?
danjac··on Bolwoningen: Living in spherical homes
To be fair, the architect did live in one of these homes.
danjac··on Cloud, why so difficult? (2022)
OK, but ultimately the customer wants a product built, features added and bugs fixed within whatever timescale and budget. With all things being equal, they would prefer that you spend the time on those things, and not on infra.

Now of course, you will have to spend some time on infra, but that should be minimised as much as possible. Whether that is using a home-grown Kubernetes based platform or a PAAS or cloud solution depends on your requirements, skill-set, budget and time, but your aim should be to have the simplest solution that works.

danjac··on Cloud, why so difficult? (2022)
I remember when early 2000s enterprise web development had J2EE, a convoluted mess of over-abstraction oversold by Sun, presumably so they could sell more servers. I recall a Sun consultant telling us that this was the "one true way". Meanwhile, we got the job done with PHP (albeit the kind of PHP that got written in the early 2000s could be its own convoluted mess).

Now you hear consultants telling you Kubernetes on top of whatever cloud service they are shilling is the one true way, or some other convoluted mess built on top of a Jenga tower of Cloud Formation and Terraform configuration files. JSON has replaced XML but otherwise, same old.

danjac··on Cloud, why so difficult? (2022)
Pretty much, yes. An application developer should be able to focus on data model, business logic and user interface, and everything else at a minimum. If you are burning your available hours working on issues with your infrastructure - whether it's cloud or hosted or on-prem - that's not delivering business value.
danjac··on Why Britain doesn’t build
That assumes that they will leave their houses to their children, and not just sell them to pay for social care.
danjac··on Why Britain doesn’t build
Only if those people who are going to be disadvantaged have political power. If the majority stand to gain by new housing, and they can elect a majority of MPs under the UK system, then the NIMBY voice is moot (although there will be no doubt resistance at local level where much of the planning will take place).
danjac··on Why Britain doesn’t build
This is an interesting political trap for the ruling Conservatives that they have made for themselves.

The traditional Conservative voter is a home-owner. So you might be a rabid socialist in your youth, but once you get a job, save up for a deposit, and buy your own home, you eventually transition to become yet another middle-aged Tory voter.

That pipeline is now broken - young people are unable to save up for their own home or get a mortgage, unless they have generational wealth. House rises have risen sharply and wages have remained stagnant, and now we have inflation - for necessities like food and bills - eating into what little people had to begin with.

The solution of course is damn the torpedoes and embark on a massive house-building programme like in the post-war period, but a) the post-Thatcher Conservatives consider that against everything they believe in, and b) current home owners - their ageing voting base - are NIMBYs who don't want the wrong sort of people living near them and any reduction in demand that would reduce their value of their homes (and they're going to need to sell their homes soon, to pay for social and health care in an increasingly threadbare welfare state).

The British press of course likes to blame "woke millenials" or whatever to keep their geriatric readership happy but this is the real reason for the collapse in the Tory vote in the under 50s.

danjac··on The Almost Romance Languages
Greece was conquered by Rome in the 2nd century BC, i.e. 200 years before Christianity, let alone its Catholic and Orthodox variants.
danjac··on The Almost Romance Languages
Sure, but the eastern half never adopted Latin to begin with, unlike the West.
danjac··on Thoughts on Svelte(Kit), one year and 3B requests later
I think (or rather, hope) that this is a symptom of the low interest-rate era, and companies may be less willing to waste money and development cycles on chasing the latest shiny.
danjac··on The Almost Romance Languages
It's interesting that while Latin spread across Western Europe (whether through conquest, commerce or religion), the eastern Mediterranean stubbornly held onto Greek long after the Western empire had fallen.
danjac··on Submarine missing near Titanic used a $30 Logitech gamepad for steering
Your first examples weren't rockets, but search engines, video hosting platforms and chatbots.

Second, it's all very well "iterating until you succeed" but that's not a good approach when live humans are involved in the iterating. "Move fast and break things" is not the same as "move fast and break people". Space X, after all, had to prove a certain level of reliability before NASA let them fly people to ISS.

danjac··on Submarine missing near Titanic used a $30 Logitech gamepad for steering
It's one thing if your favourite video host or chatbot crashes, quite another if it's a self-driven car, airplane control software or, in this case, a submarine.
danjac··on Gopher Wrangling: Effective error handling in Go
Maybe, but then look at Dart - a Google language whose real-world application so far has been the niche of Flutter app development.

I suspect it's a bit more than the Google stamp of approval - the innate simplicity of the language is attractive, it has almost Python-like simplicity without the performance concerns, and it has a "one true way" approach to formatting that settles any bikeshedding arguments in dev teams.

It's not my personal favourite language - the poor error handling discussed in this thread, the mess of the package management system (I mean, Python has a mess of a package management system, but that's more forgivable in a language from the 1990s, not the 2010s), the lack of decent standard library collections, etc. But I can see the appeal.

danjac··on Make microservices look like monoliths
That's a "nice to have" problem down the line. What I've seen is the insanity of microservices being adopted by one-pizza-team startups.
danjac··on Estimation isn’t for everyone
Agile is a process (or a school of processes) for planning and building software to meet business goals. We can debate whether or not it's good at that, but ultimately if the business goals are misguided, or user-hostile, or both, agile isn't really to blame here.
← PreviousPage 5 of 29Next →